Compartilhar via


Classe COlePropertyPage

Usado para exibir as propriedades de um controle personalizado em uma interface gráfica, semelhante a uma caixa de diálogo.

Sintaxe

class AFX_NOVTABLE COlePropertyPage : public CDialog

Membros

Construtores públicos

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

Métodos públicos

Nome Descrição
COlePropertyPage::GetControlStatus Indica se o usuário modificou o valor no controle.
COlePropertyPage::GetObjectArray Retorna a matriz de objetos que estão sendo editados pela página de propriedades.
COlePropertyPage::GetPageSite Retorna um ponteiro para a interface IPropertyPageSite da página de propriedades.
COlePropertyPage::IgnoreApply Determina quais controles não habilitam o botão Aplicar.
COlePropertyPage::IsModified Indica se o usuário modificou a página de propriedades.
COlePropertyPage::OnEditProperty Chamado pela estrutura quando o usuário edita uma propriedade.
COlePropertyPage::OnHelp Chamado pela estrutura quando o usuário invoca ajuda.
COlePropertyPage::OnInitDialog Chamado pela estrutura quando a página de propriedades é inicializada.
COlePropertyPage::OnObjectsChanged Chamado pela estrutura quando outro controle OLE, com novas propriedades, é escolhido.
COlePropertyPage::OnSetPageSite Chamado pela estrutura quando o quadro de propriedades fornece o site da página.
COlePropertyPage::SetControlStatus Define um sinalizador que indica se o usuário modificou o valor no controle.
COlePropertyPage::SetDialogResource Define o recurso de caixa de diálogo da página de propriedades.
COlePropertyPage::SetHelpInfo Define o breve texto de ajuda da página de propriedades, o nome do arquivo de ajuda e seu contexto de ajuda.
COlePropertyPage::SetModifiedFlag Define um sinalizador que indica se o usuário modificou a página de propriedades.
COlePropertyPage::SetPageName Define o nome da página de propriedades (legenda).

Comentários

Por exemplo, uma página de propriedades pode incluir um controle de edição que permite que o usuário exiba e modifique a propriedade de legenda do controle.

Cada propriedade personalizada ou de controle padrão pode ter um controle de caixa de diálogo que permite que o usuário do controle exiba o valor da propriedade atual e modifique esse valor, se necessário.

Para mais informações sobre como usar COlePropertyPage, confira o artigo Controles ActiveX: páginas de propriedades.

Hierarquia de herança

CObject

CCmdTarget

CWnd

CDialog

COlePropertyPage

Requisitos

Cabeçalho: afxctl.h

COlePropertyPage::COlePropertyPage

Constrói um objeto COlePropertyPage.

COlePropertyPage(
    UINT idDlg,
    UINT idCaption);

Parâmetros

idDlg
ID do recurso do modelo de caixa de diálogo.

idCaption
ID do recurso da legenda da página de propriedades.

Comentários

Quando você implementa uma subclasse deCOlePropertyPage, o construtor da subclasse deve usar o construtor COlePropertyPage para identificar o recurso de modelo de caixa de diálogo no qual a página de propriedades se baseia e o recurso de cadeia de caracteres que contém sua legenda.

COlePropertyPage::GetControlStatus

Determina se o usuário modificou o valor do controle de página de propriedades com a ID de recurso especificada.

BOOL GetControlStatus(UINT nID);

Parâmetros

Nid
ID do recurso de um controle de página de propriedades.

Valor de retorno

TRUE se o valor do controle tiver sido modificado; caso contrário, FALSE.

COlePropertyPage::GetObjectArray

Retorna a matriz de objetos que estão sendo editados pela página de propriedades.

LPDISPATCH* GetObjectArray(ULONG* pnObjects);

Parâmetros

pnObjects
Ponteiro para um inteiro longo sem sinal que receberá o número de objetos que estão sendo editados pela página.

Valor de retorno

Ponteiro para uma matriz de ponteiros IDispatch, que são usados para acessar as propriedades de cada controle na página de propriedades. O chamador não deve liberar esses ponteiros de interface.

Comentários

Cada objeto de página de propriedades mantém uma matriz de ponteiros para as interfaces IDispatch dos objetos que estão sendo editados pela página. Essa função define seu argumento pnObjects como o número de elementos nessa matriz e retorna um ponteiro para o primeiro elemento da matriz.

COlePropertyPage::GetPageSite

Obtém um ponteiro para a interface IPropertyPageSite da página de propriedades.

LPPROPERTYPAGESITE GetPageSite();

Valor de retorno

Um ponteiro para a interface IPropertyPageSite da página de propriedades.

Comentários

Controles e contêineres cooperam para que os usuários possam procurar e editar as propriedades de controle. O controle fornece páginas de propriedades, sendo cada uma delas um objeto OLE que permite que o usuário edite um conjunto relacionado de propriedades. O contêiner fornece um quadro de propriedades que exibe as páginas de propriedades. Para cada página, o quadro de propriedades fornece um site de página, que dá suporte à interface IPropertyPageSite.

COlePropertyPage::IgnoreApply

Determina quais controles não habilitam o botão Aplicar.

void IgnoreApply(UINT nID);

Parâmetros

Nid
ID do controle a ser ignorado.

Comentários

O botão Aplicar da página de propriedades é habilitado somente quando os valores dos controles de página de propriedades foram alterados. Use essa função para especificar controles que não fazem o botão Aplicar ser habilitado quando seus valores são alterados.

COlePropertyPage::IsModified

Determina se o usuário alterou algum valor na página de propriedades.

BOOL IsModified();

Valor de retorno

TRUE se a página de propriedades tiver sido modificada.

COlePropertyPage::OnEditProperty

A estrutura chama essa função quando uma propriedade específica deve ser editada.

virtual BOOL OnEditProperty(DISPID dispid);

Parâmetros

dispid
ID de expedição da propriedade que está sendo editada.

Valor de retorno

A implementação padrão retorna FALSE. As substituições dessa função devem retornar TRUE.

Comentários

Você pode substituí-la para definir o foco para o controle apropriado na página. A implementação padrão não faz nada e retorna FALSE.

COlePropertyPage::OnHelp

A estrutura chama essa função quando o usuário solicita ajuda online.

virtual BOOL OnHelp(LPCTSTR lpszHelpDir);

Parâmetros

lpszHelpDir
Diretório que contém o arquivo de ajuda da página de propriedades.

Valor de retorno

A implementação padrão retorna FALSE.

Comentários

Substitua-a se sua página de propriedades precisar executar qualquer ação especial quando o usuário acessar a ajuda. A implementação padrão não faz nada e retorna FALSE, o que instrui a estrutura a chamar WinHelp.

COlePropertyPage::OnInitDialog

A estrutura chama essa função quando a caixa de diálogo da página de propriedades é inicializada.

virtual BOOL OnInitDialog();

Valor de retorno

A implementação padrão retorna FALSE.

Comentários

Substitua-a se alguma ação especial for necessária quando a caixa de diálogo for inicializada. A implementação padrão chama CDialog::OnInitDialog e retorna FALSE.

COlePropertyPage::OnObjectsChanged

Chamado pela estrutura quando outro controle OLE, com novas propriedades, é escolhido.

virtual void OnObjectsChanged();

Comentários

Ao exibir as propriedades de um controle OLE no ambiente do desenvolvedor, uma caixa de diálogo sem janela restrita é usada para exibir suas páginas de propriedades. Se outro controle for selecionado, um conjunto diferente de páginas de propriedades deverá ser exibido para o novo conjunto de propriedades. A estrutura chama essa função para notificar a página de propriedades da alteração.

Substitua essa função para receber notificação dessa ação e executar ações especiais.

COlePropertyPage::OnSetPageSite

A estrutura chama essa função quando o quadro de propriedades fornece o site de página referente à página de propriedades.

virtual void OnSetPageSite();

Comentários

A implementação padrão carrega a legenda da página e tenta determinar o tamanho da página do recurso de caixa de diálogo. Substitua essa função se sua página de propriedades exigir qualquer ação adicional; sua substituição deve chamar a implementação de classe base.

COlePropertyPage::SetControlStatus

Altera o status de um controle de página de propriedades.

BOOL SetControlStatus(
    UINT nID,
    BOOL bDirty);

Parâmetros

Nid
Contém a ID de um controle de página de propriedades.

bDirty
Especifica se um campo da página de propriedades foi modificado. Defina como TRUE se o campo tiver sido modificado; FALSE se ele não tiver sido modificado.

Valor de retorno

TRUE, se o controle especificado tiver sido definido; caso contrário, FALSE.

Comentários

Se o status de um controle de página de propriedades for sujo quando a página de propriedades for fechada ou o botão Aplicar for escolhido, a propriedade do controle será atualizada com o valor apropriado.

COlePropertyPage::SetDialogResource

Define o recurso de caixa de diálogo da página de propriedades.

void SetDialogResource(HGLOBAL hDialog);

Parâmetros

hDialog
Manipule para o recurso de caixa de diálogo da página de propriedades.

COlePropertyPage::SetHelpInfo

Especifica informações de dica de ferramenta, o nome do arquivo de ajuda e o contexto de ajuda para sua página de propriedades.

void SetHelpInfo(
    LPCTSTR lpszDocString,
    LPCTSTR lpszHelpFile = NULL,
    DWORD dwHelpContext = 0);

Parâmetros

lpszDocString
Uma cadeia de caracteres que contém informações de ajuda breves para exibição em uma barra de status ou em outro local.

lpszHelpFile
Nome do arquivo de ajuda da página de propriedades.

dwHelpContext
Contexto de ajuda para a página de propriedades.

COlePropertyPage::SetModifiedFlag

Indica se o usuário modificou a página de propriedades.

void SetModifiedFlag(BOOL bModified = TRUE);

Parâmetros

bModified
Especifica o novo valor para o sinalizador modificado da página de propriedades.

COlePropertyPage::SetPageName

Define o nome da página de propriedades, que o quadro de propriedades normalmente exibirá na guia da página.

void SetPageName(LPCTSTR lpszPageName);

Parâmetros

lpszPageName
Ponteiro para uma cadeia de caracteres que contém o nome da página de propriedades.

Confira também

Exemplo do MFC CIRC3
TESTHELP de exemplo do MFC
Classe CDialog
Gráfico da hierarquia
Classe CDialog