Nota
O acesso a esta página requer autorização. Pode tentar iniciar sessão ou alterar os diretórios.
O acesso a esta página requer autorização. Pode tentar alterar os diretórios.
Observação
A biblioteca Microsoft Foundation Classes (MFC) continua a ser suportada. No entanto, já não estamos a adicionar funcionalidades nem a atualizar a documentação.
Gere vários locais de controlo personalizados; implementado por COleControlContainer objetos AND COleControlSite .
Sintaxe
class COccManager : public CNoTrackObject
Membros
Métodos Públicos
| Nome | Description |
|---|---|
| COccManager::CreateContainer | Cria um COleContainer objeto. |
| COccManager::CreateDlgControls | Cria controlos ActiveX, alojados pelo objeto associado COleContainer . |
| COccManager::CreateSite | Cria um COleClientSite objeto. |
| COccManager::GetDefBtnCode | Recupera o código do botão padrão. |
| COccManager::IsDialogMessage | Determina o destino de uma mensagem de diálogo. |
| COccManager::IsLabelControl | Determina se o controlo especificado é um controlo de rótulo. |
| Gestor do COcc::ÉEmparelhadoMnemónico | Determina se o mnemónico atual corresponde ao mnemónico do controlo especificado. |
| COccManager::OnEvent | Tenta lidar com o evento especificado. |
| COccManager::P ostCreateDialog | Liberta recursos alocados durante a criação do diálogo. |
| COccManager::P reCreateDialog | Processa um modelo de diálogo para controlos ActiveX. |
| COccManager::SetDefaultButton | Alterna o estado padrão do controlo especificado. |
| COccManager::SplitDialogTemplate | Separa quaisquer controlos ActiveX existentes dos controlos comuns no modelo de diálogo especificado. |
Observações
A classe base, CNoTrackObject, é uma classe base não documentada (localizada no AFXTLS. H). Concebidas para utilização pelo framework MFC, as classes derivadas da CNoTrackObject classe estão isentas da deteção de fugas de memória. Não é recomendado que derive diretamente de CNoTrackObject.
Hierarquia de herança
CNoTrackObject
COccManager
Requerimentos
Cabeçalho: afxocc.h
COccManager::CreateContainer
Chamado pelo framework para criar um contentor de controlo.
virtual COleControlContainer* CreateContainer(CWnd* pWnd);
Parâmetros
pWnd
Um ponteiro para o objeto janela associado ao contentor personalizado do site.
Valor de retorno
Um apontador para o contentor recém-criado; caso contrário, NULL.
Observações
Para mais informações sobre como criar sites personalizados, consulte COleControlContainer::AttachControlSite.
COccManager::CreateDlgControls
Chame esta função para criar controlos ActiveX especificados pelo parâmetro pOccDialogInfo .
virtual BOOL CreateDlgControls(
CWnd* pWndParent,
LPCTSTR lpszResourceName,
_AFX_OCC_DIALOG_INFO* pOccDialogInfo);
virtual BOOL CreateDlgControls(
CWnd* pWndParent,
void* lpResource,
_AFX_OCC_DIALOG_INFO* pOccDialogInfo);
Parâmetros
pWndParent
Um apontador para o pai do objeto de diálogo.
lpszResourceName
O nome do recurso que está a ser criado.
pOccDialogInfo
Um ponteiro para o modelo de diálogo usado para criar o objeto de diálogo.
lpResource
Um indicador para um recurso.
Valor de retorno
Não nulo se o controlo foi criado com sucesso; caso contrário, zero.
COccManager::CreateSite
Chamado pelo framework para criar um site de controlo, alojado pelo contentor apontado por pCtrlCont.
virtual COleControlSite* CreateSite(COleControlContainer* pCtrlCont);
Parâmetros
pCtrlCont
Um ponteiro para o contentor de controlo que aloja o novo site de controlo.
Valor de retorno
Um apontador para o local de controlo recém-criado.
Observações
Sobrescrita esta função para criar um site de controlo personalizado, usando a tua classe derivada do COleControlSite.
Cada contentor de controlo pode alojar vários locais. Crie sites adicionais com múltiplas chamadas para CreateSite.
COccManager::GetDefBtnCode
Chame esta função para determinar se o controlo é um botão de pressão padrão.
static DWORD AFX_CDECL GetDefBtnCode(CWnd* pWnd);
Parâmetros
pWnd
O objeto janela que contém o controlo do botão.
Valor de retorno
Um dos seguintes valores:
DLGC_DEFPUSHBUTTON Control é o botão padrão no diálogo.
DLGC_UNDEFPUSHBUTTON Control não é o botão padrão no diálogo.
O 0 Control não é um botão.
COccManager::IsDialogMessage
Chamada pelo framework para determinar se uma mensagem é destinada à caixa de diálogo especificada e, se for, processa a mensagem.
virtual BOOL IsDialogMessage(
CWnd* pWndDlg,
LPMSG lpMsg);
Parâmetros
pWndDlg
Um apontador para o diálogo alvo pretendido da mensagem.
lpMsg
Um apontador para uma MSG estrutura que contém a mensagem a verificar.
Valor de retorno
Não nula se a mensagem for processada; caso contrário, zero.
Observações
O comportamento padrão de IsDialogMessage é verificar as mensagens do teclado e convertê-las em seleções para a correspondente caixa de diálogo. Por exemplo, a tecla TAB, quando pressionada, seleciona o próximo controlo ou grupo de controlos.
Substitua esta função para fornecer um comportamento personalizado para mensagens enviadas para o diálogo especificado.
COccManager::IsLabelControl
Chame esta função para determinar se o controlo especificado é um controlo de rótulo.
static BOOL AFX_CDECL IsLabelControl(CWnd* pWnd);
static BOOL AFX_CDECL IsLabelControl(COleControlSiteOrWnd* pWnd);
Parâmetros
pWnd
Um ponteiro para a janela que contém o controlo.
Valor de retorno
Não nulo se o controlo for uma etiqueta; caso contrário, zero
Observações
Um controlo de etiqueta é aquele que atua como um rótulo para o controlo que vem a seguir na ordem.
Gestor do COcc::ÉEmparelhadoMnemónico
Chame esta função para determinar se o mnemónico atual corresponde ao representado pelo controlo.
static BOOL AFX_CDECL IsMatchingMnemonic(
CWnd* pWnd,
LPMSG lpMsg);
static BOOL AFX_CDECL IsMatchingMnemonic(
COleControlSiteOrWnd* pWnd,
LPMSG lpMsg);
Parâmetros
pWnd
Um ponteiro para a janela que contém o controlo.
lpMsg
Um apontador para a mensagem contendo o mnemónico para corresponder.
Valor de retorno
Não nulo se o mnemónico corresponder ao controlo; caso contrário, zero
Observações
COccManager::OnEvent
Chamado pelo framework para gerir o evento especificado.
virtual BOOL OnEvent(
CCmdTarget* pCmdTarget,
UINT idCtrl,
AFX_EVENT* pEvent,
AFX_CMDHANDLERINFO* pHandlerInfo);
Parâmetros
pCmdTarget
Um apontador para o CCmdTarget objeto que tenta gerir o evento
idCtrl
O ID do recurso do controlo.
pEvent
O evento a ser tratado.
pHandlerInfo
Se não for NULL, OnEvent preenche os pTarget membros e pmf da AFX_CMDHANDLERINFO estrutura em vez de despachar o comando. Normalmente, este parâmetro deve ser NULL.
Valor de retorno
Diferente de zero se o evento foi tratado, caso contrário zero.
Observações
Substitua esta função para personalizar o processo padrão de gestão de eventos.
COccManager::P reCreateDialog
Chamado pelo framework para processar um modelo de diálogo para controlos ActiveX antes de criar a caixa de diálogo propriamente dita.
virtual const DLGTEMPLATE* PreCreateDialog(
_AFX_OCC_DIALOG_INFO* pOccDialogInfo,
const DLGTEMPLATE* pOrigTemplate);
Parâmetros
pOccDialogInfo
Uma _AFX_OCC_DIALOG_INFO estrutura contendo informação sobre o template de diálogo e quaisquer controlos ActiveX alojados pelo diálogo.
pOrigTemplate
Um ponteiro para o modelo de diálogo a ser usado na criação da caixa de diálogo.
Valor de retorno
Um apontador para uma estrutura de modelo de diálogo usada para criar a caixa de diálogo.
Observações
O comportamento predefinido faz uma chamada para SplitDialogTemplate, determinando se existem controlos ActiveX presentes e depois devolve o modelo de diálogo resultante.
Substitua esta função para personalizar o processo de criação de uma caixa de diálogo que aloja controlos ActiveX.
COccManager::P ostCreateDialog
Chamado pela framework para libertar a memória alocada ao template de diálogo.
virtual void PostCreateDialog(_AFX_OCC_DIALOG_INFO* pOccDialogInfo);
Parâmetros
pOccDialogInfo
Uma _AFX_OCC_DIALOG_INFO estrutura contendo informação sobre o template de diálogo e quaisquer controlos ActiveX alojados pelo diálogo.
Observações
Esta memória era alocada por uma chamada para SplitDialogTemplate, e era usada para quaisquer controlos ActiveX alojados na caixa de diálogo.
Substitua esta função para personalizar o processo de limpeza de quaisquer recursos usados pelo objeto da caixa de diálogo.
COccManager::SetDefaultButton
Chama esta função para definir o controlo como botão predefinido.
static void AFX_CDECL SetDefaultButton(
CWnd* pWnd,
BOOL bDefault);
Parâmetros
pWnd
Um ponteiro para a janela que contém o controlo.
bPadrão
Diferente de zero se o controlo deveria tornar-se o botão padrão; caso contrário, zero.
Valor de retorno
Não nulo se for bem-sucedido; caso contrário, zero.
Observações
Observação
O controlo deve ter o bit de estado OLEMISC_ACTSLIKEBUTTON definido. Para mais informações sobre flags OLEMISC, consulte o tópico OLEMISC no SDK do Windows.
COccManager::SplitDialogTemplate
Chamado pelo framework para separar os controlos ActiveX dos controlos de diálogo comuns.
virtual DLGTEMPLATE* SplitDialogTemplate(
const DLGTEMPLATE* pTemplate,
DLGITEMTEMPLATE** ppOleDlgItems);
Parâmetros
pTemplate
Um apontador para o modelo de diálogo a examinar.
ppOleDlgItems
Uma lista de apontadores para itens de caixas de diálogo que são controlos ActiveX.
Valor de retorno
Um ponteiro para uma estrutura de template de diálogo contendo apenas controlos não ActiveX. Se não houver controlos ActiveX presentes, o NULL é devolvido.
Observações
Se forem encontrados controlos ActiveX, o modelo é analisado e criado um novo modelo, contendo apenas controlos não ActiveX. Quaisquer controlos ActiveX encontrados durante este processo são adicionados ao ppOleDlgItems.
Se não existirem controlos ActiveX no modelo, NULL é devolvido .
Observação
A memória alocada para o novo template é libertada na PostCreateDialog função.
Desative esta função para personalizar este processo.
Consulte também
Gráfico de Hierarquia
Classe COleControlSite
Classe COleControlContainer