Partilhar via


COleControlSite Classe

Fornece suporte para interfaces de controle personalizadas do lado do cliente.

Sintaxe

class COleControlSite : public CCmdTarget

Membros

Construtores Públicos

Nome Descrição
COleControlSite::COleControlSite Constrói um objeto COleControlSite.

Métodos Públicos

Nome Descrição
COleControlSite::BindDefaultProperty Vincula a propriedade padrão do controle hospedado a uma fonte de dados.
COleControlSite::BindProperty Vincula uma propriedade do controle hospedado a uma fonte de dados.
COleControlSite::CreateControl Cria um controle ActiveX hospedado.
COleControlSite::D estroyControl Destrói o controle hospedado.
COleControlSite::D oVerb Executa um verbo específico do controle hospedado.
COleControlSite::EnableDSC Permite o fornecimento de dados para um site de controle.
COleControlSite::EnableWindow Habilita o site de controle.
COleControlSite::FreezeEvents Especifica se o site de controle está aceitando eventos.
COleControlSite::GetDefBtnCode Recupera o código de botão padrão para o controle hospedado.
COleControlSite::GetDlgCtrlID Recupera o identificador do controle.
COleControlSite::GetEventIID Recupera a ID de uma interface de evento para um controle hospedado.
COleControlSite::GetExStyle Recupera os estilos estendidos do site de controle.
COleControlSite::GetProperty Recupera uma propriedade específica do controle hospedado.
COleControlSite::GetStyle Recupera os estilos do site de controle.
COleControlSite::GetWindowText Recupera o texto do controle hospedado.
COleControlSite::InvokeHelper Invoque um método específico do controle hospedado.
COleControlSite::InvokeHelperV Invoque um método específico do controle hospedado com uma lista variável de argumentos.
COleControlSite::IsDefaultButton Determina se o controle é o botão padrão na janela.
COleControlSite::IsWindowEnabled Verifica o estado visível do site de controle.
COleControlSite::ModifyStyle Modifica os estilos estendidos atuais do site de controle.
COleControlSite::ModifyStyleEx Modifica os estilos atuais do site de controle.
COleControlSite::MoveWindow Altera a posição do local de controle.
COleControlSite::QuickActivate Quick ativa o controle hospedado.
COleControlSite::SafeSetProperty Define uma propriedade ou método do controle sem chance de lançar uma exceção.
COleControlSite::SetDefaultButton Define o botão padrão na janela.
COleControlSite::SetDlgCtrlID Recupera o identificador do controle.
COleControlSite::SetFocus Define o foco para o site de controle.
COleControlSite::SetProperty Define uma propriedade específica do controle hospedado.
COleControlSite::SetPropertyV Define uma propriedade específica do controle hospedado com uma lista variável de argumentos.
COleControlSite::SetWindowPos Define a posição do site de controle.
COleControlSite::SetWindowText Define o texto do controle hospedado.
COleControlSite::ShowWindow Mostra ou oculta o site de controle.

Métodos Protegidos

Nome Descrição
COleControlSite::GetControlInfo Recupera informações do teclado e mnemônicos para o controle hospedado.

Membros de Dados Públicos

Nome Descrição
COleControlSite::m_bIsWindowless Determina se o controle hospedado é um controle sem janelas.
COleControlSite::m_ctlInfo Contém informações sobre a manipulação do teclado para o controle.
COleControlSite::m_dwEventSink O cookie do ponto de conexão do controle.
COleControlSite::m_dwMiscStatus Os estados diversos para o controle hospedado.
COleControlSite::m_dwPropNotifySink O IPropertyNotifySink cookie do controle.
COleControlSite::m_dwStyle Os estilos do controle hospedado.
COleControlSite::m_hWnd A alça do local de controle.
COleControlSite::m_iidEvents A ID da interface de evento para o controle hospedado.
COleControlSite::m_nID A ID do controle hospedado.
COleControlSite::m_pActiveObject Um ponteiro para o IOleInPlaceActiveObject objeto do controle hospedado.
COleControlSite::m_pCtrlCont O contêiner do controle hospedado.
COleControlSite::m_pInPlaceObject Um ponteiro para o IOleInPlaceObject objeto do controle hospedado.
COleControlSite::m_pObject Um ponteiro para a IOleObjectInterface interface do controle.
COleControlSite::m_pWindowlessObject Um ponteiro para a IOleInPlaceObjectWindowless interface do controle.
COleControlSite::m_pWndCtrl Um ponteiro para o objeto window para o controle hospedado.
COleControlSite::m_rect As dimensões do local de controle.

Observações

Esse suporte é o principal meio pelo qual um controle ActiveX incorporado obtém informações sobre o local e a extensão de seu site de exibição, seu moniker, sua interface de usuário, suas propriedades ambientais e outros recursos fornecidos por seu contêiner. COleControlSiteimplementa totalmente as interfaces IOleControlSite, IOleInPlaceSite, IOleClientSite, IPropertyNotifySink, IBoundObjectSite, INotifyDBEvents, IRowSetNotific. Além disso, a interface IDispatch (que fornece suporte para propriedades ambientais e coletores de eventos) também é implementada.

Para criar um site de controle ActiveX usando COleControlSite, derive uma classe de COleControlSite. Em sua CWndclasse -derived para o contêiner (por exemplo, sua caixa de diálogo) substitua a CWnd::CreateControlSite função.

Hierarquia de herança

CObject

CCmdTarget

COleControlSite

Requerimentos

Cabeçalho: afxocc.h

COleControlSite::BindDefaultProperty

Vincula a propriedade de associação simples padrão do objeto chamador, conforme marcado na biblioteca de tipos, ao cursor subjacente definido pelas propriedades DataSource, UserName, Password e SQL do controle de fonte de dados.

virtual void BindDefaultProperty(
    DISPID dwDispID,
    VARTYPE vtProp,
    LPCTSTR szFieldName,
    CWnd* pDSCWnd);

Parâmetros

dwDispID
Especifica o DISPID de uma propriedade em um controle vinculado a dados que deve ser vinculado a um controle de fonte de dados.

vtProp
Especifica o tipo da propriedade a ser vinculada — por exemplo, VT_BSTR, VT_VARIANT e assim por diante.

szFieldName
Especifica o nome da coluna, no cursor fornecido pelo controle da fonte de dados, à qual a propriedade será vinculada.

pDSCWnd
Um ponteiro para o CWndobjeto -derived que hospeda o controle da fonte de dados ao qual a propriedade será vinculada.

Observações

O CWnd objeto no qual você chama essa função deve ser um controle ligado a dados.

COleControlSite::BindProperty

Vincula a propriedade simples vinculada do objeto chamador, conforme marcado na biblioteca de tipos, ao cursor subjacente definido pelas propriedades DataSource, UserName, Password e SQL do controle da fonte de dados.

virtual void BindProperty(
    DISPID dwDispId,
    CWnd* pWndDSC);

Parâmetros

dwDispId
Especifica o DISPID de uma propriedade em um controle vinculado a dados que deve ser vinculado a um controle de fonte de dados.

pWndDSC
Um ponteiro para o CWndobjeto -derived que hospeda o controle da fonte de dados ao qual a propriedade será vinculada.

Observações

O CWnd objeto no qual você chama essa função deve ser um controle ligado a dados.

COleControlSite::COleControlSite

Constrói um novo COleControlSite objeto.

explicit COleControlSite(COleControlContainer* pCtrlCont);

Parâmetros

pCtrlCont
Um ponteiro para o contêiner do controle (que representa a janela que hospeda o controle AtiveX).

Observações

Esta função é chamada pela função COccManager::CreateContainer . Para obter mais informações sobre como personalizar a criação de contêineres, consulte COccManager::CreateSite.

COleControlSite::CreateControl

Cria um controle ActiveX, hospedado pelo COleControlSite objeto.

virtual HRESULT CreateControl(
    CWnd* pWndCtrl,
    REFCLSID clsid,
    LPCTSTR lpszWindowName,
    DWORD dwStyle,
    const RECT& rect,
    UINT nID,
    CFile* pPersist = NULL,
    BOOL bStorage = FALSE,
    BSTR bstrLicKey = NULL);

virtual HRESULT CreateControl(
    CWnd* pWndCtrl,
    REFCLSID clsid,
    LPCTSTR lpszWindowName,
    DWORD dwStyle,
    const POINT* ppt,
    const SIZE* psize,
    UINT nID,
    CFile* pPersist = NULL,
    BOOL bStorage = FALSE,
    BSTR bstrLicKey = NULL);

Parâmetros

pWndCtrl
Um ponteiro para o objeto window que representa o controle.

CLSID
O ID de classe exclusivo do controle.

lpszWindowName
Um ponteiro para o texto a ser exibido no controle. Define o valor da propriedade Caption ou Text do winodw (se houver).

dwStyle
Estilos do Windows. Os estilos disponíveis estão listados na seção Observações .

retângulo
Especifica o tamanho e a posição do controle. Pode ser um CRect objeto ou uma RECT estrutura.

nID
Especifica o ID da janela filho do controle.

pPersistir
Um ponteiro para um CFile que contém o estado persistente para o controle. O valor padrão é NULL, indicando que o controle se inicializa sem restaurar seu estado de qualquer armazenamento persistente. Se não for NULL, deve ser um ponteiro para um CFileobjeto derivado que contém os dados persistentes do controle, na forma de um fluxo ou um armazenamento. Esses dados poderiam ter sido salvos em uma ativação anterior do cliente. O CFile pode conter outros dados, mas deve ter seu ponteiro de leitura-gravação definido como o primeiro byte de dados persistentes no momento da chamada para CreateControl.

bArmazenamento
Indica se os dados em pPersist devem ser interpretados como IStorage ou IStream dados. Se os dados no pPersist forem um armazenamento, bStorage deve ser TRUE. Se os dados em pPersist forem um fluxo, bStorage deve ser FALSE. O valor padrão é FALSE.

bstrLicKey
Dados de chave de licença opcionais. Esses dados são necessários apenas para criar controles que exigem uma chave de licença em tempo de execução. Se o controle oferecer suporte ao licenciamento, você deverá fornecer uma chave de licença para que a criação do controle seja bem-sucedida. O valor padrão é NULL.

PPT
Um ponteiro para uma POINT estrutura que contém o canto superior esquerdo do controle. O tamanho do controle é determinado pelo valor de psize. Os valores ppt e psize são um método opcional de especificar o tamanho e a posição do controle.

tamanho de psize
Um ponteiro para uma SIZE estrutura que contém o tamanho do controle. O canto superior esquerdo é determinado pelo valor de ppt. Os valores ppt e psize são um método opcional de especificar o tamanho e a posição do controle.

Valor de retorno

Um valor HRESULT padrão.

Observações

Apenas um subconjunto dos sinalizadores dwStyle do Windows são suportados por CreateControl:

  • WS_VISIBLE Cria uma janela que é inicialmente visível. Necessário se você quiser que o controle seja visível imediatamente, como janelas comuns.

  • WS_DISABLED Cria uma janela inicialmente desativada. Uma janela desativada não pode receber entrada do usuário. Pode ser definido se o controle tiver uma propriedade Enabled.

  • WS_BORDER Cria uma janela com uma borda de linha fina. Pode ser definido se o controle tiver uma propriedade BorderStyle.

  • WS_GROUP Especifica o primeiro controle de um grupo de controles. O usuário pode alterar o foco do teclado de um controle no grupo para o próximo usando as teclas de direção. Todos os controles definidos com o estilo WS_GROUP após o primeiro controle pertencem ao mesmo grupo. O próximo controle com o estilo WS_GROUP termina o grupo e inicia o próximo grupo.

  • WS_TABSTOP Especifica um controle que pode receber o foco do teclado quando o usuário pressiona a tecla TAB. Pressionar a tecla TAB altera o foco do teclado para o próximo controle do estilo WS_TABSTOP.

Use a segunda sobrecarga para criar controles de tamanho padrão.

COleControlSite::D estroyControl

Destrói o COleControlSite objeto.

virtual BOOL DestroyControl();

Valor de retorno

Diferente de zero se for bem-sucedido, caso contrário, 0.

Observações

Uma vez concluído, o objeto é liberado da memória e quaisquer ponteiros para o objeto não são mais válidos.

COleControlSite::D oVerb

Executa o verbo especificado.

virtual HRESULT DoVerb(
    LONG nVerb,
    LPMSG lpMsg = NULL);

Parâmetros

nVerbo
Especifica o verbo executar. Pode incluir um dos seguintes elementos:

Valor Significado Símbolo
0 Verbo primário OLEIVERB_PRIMARY
-1 Verbo secundário (Nenhum)
1 Exibe o objeto para edição. OLEIVERB_SHOW
-2 Edita o item em uma janela separada. OLEIVERB_OPEN
-3 Oculta o objeto. OLEIVERB_HIDE
-4 Ativa um controle in-loco. OLEIVERB_UIACTIVATE
5- Ativa um controle in-loco, sem elementos adicionais da interface do usuário. OLEIVERB_INPLACEACTIVATE
-7 Exiba as propriedades do controle. OLEIVERB_PROPERTIES

lpMsg
Ponteiro para a mensagem que fez com que o item fosse ativado.

Valor de retorno

Um valor HRESULT padrão.

Observações

Esta função chama diretamente através da interface do IOleObject controle para executar o verbo especificado. Se uma exceção for lançada como resultado dessa chamada de função, um código de erro HRESULT será retornado.

Para obter mais informações, consulte IOleObject::D oVerb no SDK do Windows.

COleControlSite::EnableDSC

Permite o fornecimento de dados para o local de controle.

virtual void EnableDSC();

Observações

Chamado pela estrutura para habilitar e inicializar o fornecimento de dados para o site de controle. Substitua essa função para fornecer um comportamento personalizado.

COleControlSite::EnableWindow

Habilita ou desabilita a entrada de mouse e teclado no site de controle.

virtual BOOL EnableWindow(BOOL bEnable);

Parâmetros

bAtivar
Especifica se a janela deve ser habilitada ou desabilitada: TRUE se a entrada da janela for habilitada, caso contrário, FALSE.

Valor de retorno

Diferente de zero se a janela foi desativada anteriormente, caso contrário, 0.

COleControlSite::FreezeEvents

Especifica se o site de controle manipulará ou ignorará eventos disparados de um controle.

void FreezeEvents(BOOL bFreeze);

Parâmetros

bCongelar
Especifica se o site de controle deseja parar de aceitar eventos. Diferente de zero se o controle não estiver aceitando eventos; caso contrário, zero.

Observações

Se bFreeze for TRUE, o site de controle solicitará que o controle pare de disparar eventos. Se bFreeze for FALSE, o site de controle solicitará que o controle continue disparando eventos.

Observação

O controle não é necessário para interromper eventos de disparo se solicitado pelo site de controle. Ele pode continuar disparando, mas todos os eventos subsequentes serão ignorados pelo site de controle.

COleControlSite::GetControlInfo

Recupera informações sobre os mnemônicos e o comportamento do teclado de um controle.

void GetControlInfo();

Observações

As informações são armazenadas em COleControlSite::m_ctlInfo.

COleControlSite::GetDefBtnCode

Determina se o controle é um botão de pressão padrão.

DWORD GetDefBtnCode();

Valor de retorno

Pode ser um dos seguintes valores:

  • DLGC_DEFPUSHBUTTON Control é o botão padrão na caixa de diálogo.

  • DLGC_UNDEFPUSHBUTTON Control não é o botão padrão na caixa de diálogo.

  • 0 Control não é um botão.

COleControlSite::GetDlgCtrlID

Recupera o identificador do controle.

virtual int GetDlgCtrlID() const;

Valor de retorno

O identificador de item de diálogo do controle.

COleControlSite::GetEventIID

Recupera um ponteiro para a interface de evento padrão do controle.

BOOL GetEventIID(IID* piid);

Parâmetros

Piid
Um ponteiro para um ID de interface.

Valor de retorno

Diferente de zero se for bem-sucedido, caso contrário, 0. Se for bem-sucedido, o piid contém o ID da interface para a interface de eventos padrão do controle.

COleControlSite::GetExStyle

Recupera os estilos estendidos da janela.

virtual DWORD GetExStyle() const;

Valor de retorno

Os estilos estendidos da janela de controle.

Observações

Para recuperar os estilos regulares, chame COleControlSite::GetStyle.

COleControlSite::GetProperty

Obtém a propriedade de controle especificada por dwDispID.

virtual void GetProperty(
    DISPID dwDispID,
    VARTYPE vtProp,
    void* pvProp) const;

Parâmetros

dwDispID
Identifica o ID de despacho da propriedade, encontrado na interface padrão IDispatch do controle, a ser recuperado.

vtProp
Especifica o tipo da propriedade a ser recuperada. Para valores possíveis, consulte a seção Observações para COleDispatchDriver::InvokeHelper.

pvProp
Endereço da variável que receberá o valor da propriedade. Ele deve corresponder ao tipo especificado por vtProp.

Observações

O valor é retornado através de pvProp.

COleControlSite::GetStyle

Recupera os estilos do site de controle.

virtual DWORD GetStyle() const;

Valor de retorno

Os estilos da janela.

Observações

Para obter uma lista de valores possíveis, consulte Estilos do Windows. Para recuperar os estilos estendidos do site de controle, chame COleControlSite::GetExStyle.

COleControlSite::GetWindowText

Recupera o texto atual do controle.

virtual void GetWindowText(CString& str) const;

Parâmetros

STR
Uma referência a um CString objeto que contém o texto atual do controle.

Observações

Se o controle oferecer suporte à propriedade de estoque Caption, esse valor será retornado. Se a propriedade Stock Caption não for suportada, o valor da propriedade Text será retornado.

COleControlSite::InvokeHelper

Invoca o método ou a propriedade especificada por dwDispID, no contexto especificado por wFlags.

virtual void AFX_CDECL InvokeHelper(
    DISPID dwDispID,
    WORD wFlags,
    VARTYPE vtRet,
    void* pvRet,
    const BYTE* pbParamInfo, ...);

Parâmetros

dwDispID
Identifica o ID de despacho da propriedade ou método, encontrado na interface do IDispatch controle, a ser invocado.

wBandeiras
Sinalizadores que descrevem o contexto da chamada para IDispatch::Invoke. Para obter possíveis valores wFlags , consulte IDispatch::Invoke no SDK do Windows.

vtRet
Especifica o tipo do valor de retorno. Para valores possíveis, consulte a seção Observações para COleDispatchDriver::InvokeHelper.

pvRet
Endereço da variável que receberá o valor da propriedade ou o valor de retorno. Ele deve corresponder ao tipo especificado pelo vtRet.

pbParamInfo
Ponteiro para uma cadeia de bytes terminada em nulo especificando os tipos dos parâmetros após pbParamInfo. Para valores possíveis, consulte a seção Observações para COleDispatchDriver::InvokeHelper.

...
Lista variável de parâmetros, de tipos especificados em pbParamInfo.

Observações

O parâmetro pbParamInfo especifica os tipos dos parâmetros passados para o método ou propriedade. A lista variável de argumentos é representada por ... na declaração de sintaxe.

Esta função converte os parâmetros para valores VARIANTARG e, em seguida, invoca o IDispatch::Invoke método no controle. Se a chamada para IDispatch::Invoke falhar, essa função lançará uma exceção. Se o código de status retornado por IDispatch::Invoke for DISP_E_EXCEPTION, essa função lançará um COleDispatchException objeto, caso contrário, lançará um COleExceptionarquivo .

COleControlSite::InvokeHelperV

Invoca o método ou a propriedade especificada por dwDispID, no contexto especificado por wFlags.

virtual void InvokeHelperV(
    DISPID dwDispID,
    WORD wFlags,
    VARTYPE vtRet,
    void* pvRet,
    const BYTE* pbParamInfo,
    va_list argList);

Parâmetros

dwDispID
Identifica o ID de despacho da propriedade ou método, encontrado na interface do IDispatch controle, a ser invocado.

wBandeiras
Sinalizadores que descrevem o contexto da chamada para IDispatch::Invoke.

vtRet
Especifica o tipo do valor de retorno. Para valores possíveis, consulte a seção Observações para COleDispatchDriver::InvokeHelper.

pvRet
Endereço da variável que receberá o valor da propriedade ou o valor de retorno. Ele deve corresponder ao tipo especificado pelo vtRet.

pbParamInfo
Ponteiro para uma cadeia de bytes terminada em nulo especificando os tipos dos parâmetros após pbParamInfo. Para valores possíveis, consulte a seção Observações para COleDispatchDriver::InvokeHelper.

argList
Ponteiro para uma lista de argumentos variáveis.

Observações

O parâmetro pbParamInfo especifica os tipos dos parâmetros passados para o método ou propriedade. Parâmetros extras para o método ou propriedade que está sendo invocado podem ser passados usando o parâmetro va_list .

Normalmente, essa função é chamada por COleControlSite::InvokeHelper.

COleControlSite::IsDefaultButton

Determina se o controle é o botão padrão.

BOOL IsDefaultButton();

Valor de retorno

Diferente de zero se o controle for o botão padrão na janela, caso contrário, zero.

COleControlSite::IsWindowEnabled

Determina se o site de controle está habilitado.

virtual BOOL IsWindowEnabled() const;

Valor de retorno

Diferente de zero se o controle estiver habilitado, caso contrário, zero.

Observações

O valor é recuperado da propriedade Stock Enabled do controle.

COleControlSite::m_bIsWindowless

Determina se o objeto é um controle sem janelas.

BOOL m_bIsWindowless;

Observações

Diferente de zero se o controle não tiver janela, caso contrário, zero.

COleControlSite::m_ctlInfo

Informações sobre como a entrada do teclado é manipulada pelo controle.

CONTROLINFO m_ctlInfo;

Observações

Essas informações são armazenadas em uma estrutura CONTROLINFO .

COleControlSite::m_dwEventSink

Contém o cookie do ponto de conexão do coletor de eventos do controle.

DWORD m_dwEventSink;

COleControlSite::m_dwMiscStatus

Contém informações diversas sobre o controle.

DWORD m_dwMiscStatus;

Observações

Para obter mais informações, consulte OLEMISC no SDK do Windows.

COleControlSite::m_dwPropNotifySink

Contém o cookie IPropertyNotifySink .

DWORD m_dwPropNotifySink;

COleControlSite::m_dwStyle

Contém os estilos Window do controle.

DWORD m_dwStyle;

COleControlSite::m_hWnd

Contém o HWND do controle, ou NULL se o controle for sem janelas.

HWND m_hWnd;

COleControlSite::m_iidEvents

Contém o ID da interface do coletor de eventos padrão do controle.

IID m_iidEvents;

COleControlSite::m_nID

Contém a ID do item de diálogo do controle.

UINT m_nID;

COleControlSite::m_pActiveObject

Contém a interface IOleInPlaceActiveObject do controle.

LPOLEINPLACEACTIVEOBJECT m_pActiveObject;

COleControlSite::m_pCtrlCont

Contém o contêiner do controle (representando o formulário).

COleControlContainer* m_pCtrlCont;

COleControlSite::m_pInPlaceObject

Contém a IOleInPlaceObject interface IOleInPlaceObject do controle.

LPOLEINPLACEOBJECT m_pInPlaceObject;

COleControlSite::m_pObject

Contém a IOleObjectInterface interface do controle.

LPOLEOBJECT m_pObject;

COleControlSite::m_pWindowlessObject

Contém a IOleInPlaceObjectWindowless interface do controle.

IOleInPlaceObjectWindowless* m_pWindowlessObject;

COleControlSite::m_pWndCtrl

Contém um ponteiro para o CWnd objeto que representa o próprio controle.

CWnd* m_pWndCtrl;

COleControlSite::m_rect

Contém os limites do controle, relativos à janela do contêiner.

CRect m_rect;

COleControlSite::ModifyStyle

Modifica os estilos do controle.

virtual BOOL ModifyStyle(
    DWORD dwRemove,
    DWORD dwAdd,
    UINT nFlags);

Parâmetros

dwRemover
Os estilos a serem removidos dos estilos de janela atuais.

dwAdicionar
Os estilos a serem adicionados a partir dos estilos de janela atuais.

nBandeiras
Sinalizadores de posicionamento de janelas. Para obter uma lista de valores possíveis, consulte a função SetWindowPos no SDK do Windows.

Valor de retorno

Diferente de zero se os estilos forem alterados, caso contrário, zero.

Observações

A propriedade stock Enabled do controle será modificada para corresponder à configuração de WS_DISABLED. A propriedade Border Style do controle será modificada para corresponder à configuração solicitada para WS_BORDER. Todos os outros estilos são aplicados diretamente à alça da janela do controle, se houver um.

Modifica os estilos de janela do controle. Os estilos a serem adicionados ou removidos podem ser combinados usando o operador bit a bit OR (|). Consulte a função CreateWindow no SDK do Windows para obter informações sobre os estilos de janela disponíveis.

Se nFlags for diferente de zero, ModifyStyle chamará a função SetWindowPosWin32 e redesenha a janela combinando nFlags com os quatro sinalizadores a seguir:

  • SWP_NOSIZE Mantém o tamanho atual.

  • SWP_NOMOVE Mantém a posição atual.

  • SWP_NOZORDER Mantém a ordem Z atual.

  • SWP_NOACTIVATE Não ativa a janela.

Para modificar os estilos estendidos de uma janela, chame ModifyStyleEx.

COleControlSite::ModifyStyleEx

Modifica os estilos estendidos do controle.

virtual BOOL ModifyStyleEx(
    DWORD dwRemove,
    DWORD dwAdd,
    UINT nFlags);

Parâmetros

dwRemover
Os estilos estendidos a serem removidos dos estilos de janela atuais.

dwAdicionar
Os estilos estendidos a serem adicionados a partir dos estilos de janela atuais.

nBandeiras
Sinalizadores de posicionamento de janelas. Para obter uma lista de valores possíveis, consulte a função SetWindowPos no SDK do Windows.

Valor de retorno

Diferente de zero se os estilos forem alterados, caso contrário, zero.

Observações

A propriedade Aparência do estoque do controle será modificada para corresponder à configuração de WS_EX_CLIENTEDGE. Todos os outros estilos de janela estendida são aplicados diretamente à alça de janela do controle, se houver um.

Modifica os estilos estendidos da janela do objeto de site de controle. Os estilos a serem adicionados ou removidos podem ser combinados usando o operador bit a bit OR (|). Consulte a função CreateWindowEx no SDK do Windows para obter informações sobre os estilos de janela disponíveis.

Se nFlags for diferente de zero, ModifyStyleEx chamará a função SetWindowPosWin32 e redesenha a janela combinando nFlags com os quatro sinalizadores a seguir:

  • SWP_NOSIZE Mantém o tamanho atual.

  • SWP_NOMOVE Mantém a posição atual.

  • SWP_NOZORDER Mantém a ordem Z atual.

  • SWP_NOACTIVATE Não ativa a janela.

Para modificar os estilos estendidos de uma janela, chame ModifyStyle.

COleControlSite::MoveWindow

Altera a posição do controle.

virtual void MoveWindow(
    int x,
    int y,
    int nWidth,
    int nHeight);

Parâmetros

x
A nova posição do lado esquerdo da janela.

y
A nova posição da parte superior da janela.

nLargura
A nova largura da janela

nAltura
A nova altura da janela.

COleControlSite::QuickActivate

Quick ativa o controle contido.

virtual BOOL QuickActivate();

Valor de retorno

Diferente de zero se o local de controle foi ativado, caso contrário, zero.

Observações

Esta função deve ser chamada somente se o usuário estiver substituindo o processo de criação do controle.

Os métodos e IPersist*::Load devem ser chamados após a IPersist*::InitNew ativação rápida ocorrer. O controle deve estabelecer suas conexões com as pias do contêiner durante a ativação rápida. No entanto, essas conexões não estão ativas até IPersist*::Load ou IPersist*::InitNew foram chamadas.

COleControlSite::SafeSetProperty

Define a propriedade control especificada por dwDispID.

virtual BOOL AFX_CDECL SafeSetProperty(
    DISPID dwDispID,
    VARTYPE vtProp, ...);

Parâmetros

dwDispID
Identifica o ID de despacho da propriedade ou método, encontrado na interface do IDispatch controle, a ser definido.

vtProp
Especifica o tipo de propriedade a ser definida. Para valores possíveis, consulte a seção Observações para COleDispatchDriver::InvokeHelper.

...
Um único parâmetro do tipo especificado por vtProp.

Valor de retorno

Diferente de zero se for bem-sucedido; caso contrário, zero.

Observações

Observação

Ao contrário SetProperty de e SetPropertyV, se um erro for encontrado (como tentar definir uma propriedade inexistente), nenhuma exceção será lançada.

COleControlSite::SetDefaultButton

Define o controle como o botão padrão.

void SetDefaultButton(BOOL bDefault);

Parâmetros

bInadimplência
Diferente de zero se o controle deve se tornar o botão padrão; caso contrário, zero.

Observações

Observação

O controle deve ter o bit de status OLEMISC_ACTSLIKEBUTTON definido.

COleControlSite::SetDlgCtrlID

Altera o valor do identificador de item de diálogo do controle.

virtual int SetDlgCtrlID(int nID);

Parâmetros

nID
O novo valor do identificador.

Valor de retorno

Se for bem-sucedido, o identificador de item de diálogo anterior da janela; caso contrário, 0.

Observações

COleControlSite::SetFocus

Define o foco para o controle.

virtual CWnd* SetFocus();
virtual CWnd* SetFocus(LPMSG lpmsg);

Parâmetros

lpmsg
Um ponteiro para uma estrutura MSG. Essa estrutura contém a mensagem do Windows que aciona a SetFocus solicitação para o controle contido no site de controle atual.

Valor de retorno

Um ponteiro para a janela que anteriormente tinha foco.

COleControlSite::SetProperty

Define a propriedade control especificada por dwDispID.

virtual void AFX_CDECL SetProperty(
    DISPID dwDispID,
    VARTYPE vtProp, ...);

Parâmetros

dwDispID
Identifica o ID de despacho da propriedade ou método, encontrado na interface do IDispatch controle, a ser definido.

vtProp
Especifica o tipo de propriedade a ser definida. Para valores possíveis, consulte a seção Observações para COleDispatchDriver::InvokeHelper.

...
Um único parâmetro do tipo especificado por vtProp.

Observações

Se SetProperty encontrar um erro, uma exceção será lançada.

O tipo de exceção é determinado pelo valor de retorno da tentativa de definir a propriedade ou o método. Se o valor de retorno for DISP_E_EXCEPTION, a COleDispatchExcpetion é lançado, caso contrário, um COleException.

COleControlSite::SetPropertyV

Define a propriedade control especificada por dwDispID.

virtual void SetPropertyV(
    DISPID dwDispID,
    VARTYPE vtProp,
    va_list argList);

Parâmetros

dwDispID
Identifica o ID de despacho da propriedade ou método, encontrado na interface do IDispatch controle, a ser definido.

vtProp
Especifica o tipo de propriedade a ser definida. Para valores possíveis, consulte a seção Observações para COleDispatchDriver::InvokeHelper.

argList
Ponteiro para a lista de argumentos.

Observações

Parâmetros extras para o método ou propriedade que está sendo invocado podem ser passados usando o parâmetro arg_list . Se SetProperty encontrar um erro, uma exceção será lançada.

O tipo de exceção é determinado pelo valor de retorno da tentativa de definir a propriedade ou o método. Se o valor de retorno for DISP_E_EXCEPTION, a COleDispatchExcpetion é lançado, caso contrário, um COleException.

COleControlSite::SetWindowPos

Define o tamanho, a posição e a ordem Z do site de controle.

virtual BOOL SetWindowPos(
    const CWnd* pWndInsertAfter,
    int x,
    int y,
    int cx,
    int cy,
    UINT nFlags);

Parâmetros

pWndInsertAfter
Um ponteiro para a janela.

x
A nova posição do lado esquerdo da janela.

y
A nova posição da parte superior da janela.

CX
A nova largura da janela

cy
A nova altura da janela.

nBandeiras
Especifica o dimensionamento da janela e os sinalizadores de posicionamento. Para obter valores possíveis, consulte a seção Comentários para SetWindowPos no SDK do Windows.

Valor de retorno

Diferente de zero se bem-sucedido, caso contrário, zero.

COleControlSite::SetWindowText

Define o texto para o site de controle.

virtual void SetWindowText(LPCTSTR lpszString);

Parâmetros

lpszString
Ponteiro para uma cadeia de caracteres terminada em nulo a ser usado como o novo título ou texto de controle.

Observações

Esta função primeiro tenta definir a propriedade de estoque Caption. Se a propriedade Caption stock não for suportada, a propriedade Text será definida.

COleControlSite::ShowWindow

Define o estado de exibição da janela.

virtual BOOL ShowWindow(int nCmdShow);

Parâmetros

nCmdShow
Especifica como o site de controle deve ser mostrado. Deve ser um dos seguintes valores:

  • SW_HIDE Oculta esta janela e passa a ativação para outra janela.

  • SW_MINIMIZE Minimiza a janela e ativa a janela de nível superior na lista do sistema.

  • SW_RESTORE Ativa e exibe a janela. Se a janela for minimizada ou maximizada, o Windows restaura-a para o seu tamanho e posição originais.

  • SW_SHOW Ativa a janela e a exibe em seu tamanho e posição atuais.

  • SW_SHOWMAXIMIZED Ativa a janela e a exibe como uma janela maximizada.

  • SW_SHOWMINIMIZED Ativa a janela e a exibe como um ícone.

  • SW_SHOWMINNOACTIVE Exibe a janela como um ícone. A janela que está ativa no momento permanece ativa.

  • SW_SHOWNA Exibe a janela em seu estado atual. A janela que está ativa no momento permanece ativa.

  • SW_SHOWNOACTIVATE Exibe a janela em seu tamanho e posição mais recentes. A janela que está ativa no momento permanece ativa.

  • SW_SHOWNORMAL Ativa e exibe a janela. Se a janela for minimizada ou maximizada, o Windows restaura-a para o seu tamanho e posição originais.

Valor de retorno

Diferente de zero se a janela era visível anteriormente; 0 se a janela estava oculta anteriormente.

Ver também

CCmdTarget Classe
Gráfico de Hierarquia
COleControlContainer Classe