Partilhar via


CMFCPropertyGridProperty classe

Um objeto CMFCPropertyGridProperty representa um item de lista em um controle de lista de propriedades.

Para obter mais detalhes, consulte o código-fonte localizado na pasta mfc da instalação do Visual Studio. Por exemplo, %ProgramFiles(x86)%\Microsoft Visual Studio\2019\Enterprise\VC\Tools\MSVC\14.29.30133\atlmfc\src\mfc.

Sintaxe

class CMFCPropertyGridProperty : public CObject

Membros

Construtores Públicos

Designação Descrição
CMFCPropertyGridProperty::CMFCPropertyGridProperty Constrói um objeto CMFCPropertyGridProperty.
CMFCPropertyGridProperty::~CMFCPropertyGridProperty Destruidor.

Métodos Públicos

Designação Descrição
CMFCPropertyGridProperty::AddOption Adiciona um novo item de lista a um controle de lista de propriedades.
CMFCPropertyGridProperty::AddSubItem Adiciona um item filho a uma propriedade.
CMFCPropertyGridProperty::AdjustButtonRect Chamado pelo controle de lista de propriedades pai para dizer a uma propriedade para redimensionar o retângulo delimitador de um botão incorporado.
CMFCPropertyGridProperty::AdjustInPlaceEditRect Recupera os limites da caixa de texto e do controle de botão giratório opcional que são usados para definir um valor de propriedade.
CMFCPropertyGridProperty::AllowEdit Torna uma propriedade editável ou somente leitura.
CMFCPropertyGridProperty::CreateInPlaceEdit Chamado pela estrutura para criar um controle editável para uma propriedade.
CMFCPropertyGridProperty::CreateSpinControl Chamado pela estrutura para criar um controle de botão giratório editável.
CMFCPropertyGridProperty::Enable Habilita ou desabilita uma propriedade.
CMFCPropertyGridProperty::EnableSpinControl Habilita ou desabilita um controle de botão giratório que é usado para modificar um valor de propriedade.
CMFCPropertyGridProperty::Expand Expande ou recolhe uma propriedade que contém subpropriedades.
CMFCPropertyGridProperty::FormatProperty Formata a representação de texto de um valor de propriedade.
CMFCPropertyGridProperty::GetData Recupera um valor DWORD associado a uma propriedade.
CMFCPropertyGridProperty::GetDescription Recupera uma descrição da propriedade.
CMFCPropertyGridProperty::GetExpandedSubItems Recupera o número de subitens expandidos.
CMFCPropertyGridProperty::GetHierarchyLevel Recupera o índice baseado em zero do nível hierárquico da propriedade.
CMFCPropertyGridProperty::GetName Recupera o nome da propriedade.
CMFCPropertyGridProperty::GetNameTooltip Chamado pela estrutura para exibir o nome da propriedade em uma dica de ferramenta.
CMFCPropertyGridProperty::GetOption Recupera o texto da opção especificada por um índice.
CMFCPropertyGridProperty::GetOptionCount Recupera o número de opções que pertencem a uma propriedade.
CMFCPropertyGridProperty::GetOriginalValue Recupera o valor inicial da propriedade atual.
CMFCPropertyGridProperty::GetParent Recupera um ponteiro para uma propriedade pai.
CMFCPropertyGridProperty::GetRect Recupera o retângulo delimitador de uma propriedade.
CMFCPropertyGridProperty::GetSubItem Recupera uma subpropriedade identificada por um índice baseado em zero.
CMFCPropertyGridProperty::GetSubItemsCount Recupera o número de subitens.
CMFCPropertyGridProperty::GetThisClass Usado pela estrutura para obter um ponteiro para o objeto CRuntimeClass associado a esse tipo de classe.
CMFCPropertyGridProperty::GetValue Recupera um valor de propriedade.
CMFCPropertyGridProperty::GetValueTooltip Chamado pela estrutura para recuperar a representação de texto do valor da propriedade que é exibida em uma dica de ferramenta.
CMFCPropertyGridProperty::HitTest Aponta para o objeto de propriedade que corresponde ao item de lista de propriedades que corresponde a um ponto.
CMFCPropertyGridProperty::IsAllowEdit Indica se uma propriedade é editável.
CMFCPropertyGridProperty::IsEnabled Indica se uma propriedade está habilitada ou desabilitada.
CMFCPropertyGridProperty::IsExpanded Indica se uma propriedade está expandida ou recolhida.
CMFCPropertyGridProperty::IsGroup Indica se a propriedade atual representa um grupo.
CMFCPropertyGridProperty::IsInPlaceEditing Indica se a propriedade atual é editável.
CMFCPropertyGridProperty::IsModified Indica se a propriedade atual foi modificada.
CMFCPropertyGridProperty::IsParentExpanded Indica se os pais da propriedade atual estão expandidos.
CMFCPropertyGridProperty::IsSelected Indica se a propriedade atual está selecionada.
CMFCPropertyGridProperty::IsVisible Indica se a propriedade atual está visível.
CMFCPropertyGridProperty::OnClickButton Chamado pela estrutura quando o usuário seleciona um botão que está contido em uma propriedade.
CMFCPropertyGridProperty::OnClickName Chamado por um controle de lista de propriedades pai quando um usuário seleciona o campo de nome de uma propriedade.
CMFCPropertyGridProperty::OnClickValue Chamado por um controle de lista de propriedades pai quando um usuário seleciona o campo de valor de uma propriedade.
CMFCPropertyGridProperty::OnCloseCombo Chamado pela estrutura quando uma caixa de combinação contida em uma propriedade é fechada.
CMFCPropertyGridProperty::OnDblClk Chamado pela estrutura quando o usuário clica duas vezes em uma propriedade.
CMFCPropertyGridProperty::OnDrawButton Chamado pela estrutura para desenhar um botão que está contido em uma propriedade.
CMFCPropertyGridProperty::OnDrawDescription Chamado pela estrutura para exibir a descrição da propriedade.
CMFCPropertyGridProperty::OnDrawExpandBox Chamado pela estrutura para desenhar um controle de caixa de expansão perto de uma propriedade que contém subpropriedades.
CMFCPropertyGridProperty::OnDrawName Chamado pela estrutura para exibir o nome da propriedade.
CMFCPropertyGridProperty::OnDrawValue Chamado pela estrutura para exibir o valor da propriedade.
CMFCPropertyGridProperty::OnEdit Chamado pela estrutura quando o usuário está prestes a modificar um valor de propriedade.
CMFCPropertyGridProperty::OnEndEdit Chamado pela estrutura quando o usuário termina de modificar um valor de propriedade.
CMFCPropertyGridProperty::OnKillSelection
CMFCPropertyGridProperty::OnPosSizeChanged
CMFCPropertyGridProperty::OnRClickName Chamado pela estrutura quando o usuário seleciona o botão direito do mouse na área de nome da propriedade.
CMFCPropertyGridProperty::OnRClickValue Chamado pela estrutura quando o usuário seleciona o botão direito do mouse na área de valor da propriedade.
CMFCPropertyGridProperty::OnSelectCombo Chamado pela estrutura quando o usuário seleciona um item da caixa de combinação editável.
CMFCPropertyGridProperty::OnSetCursor Chamado pela estrutura quando o ponteiro do mouse se move para um item de propriedade.
CMFCPropertyGridProperty::OnSetSelection
CMFCPropertyGridProperty::OnUpdateValue Chamado pela estrutura quando o valor de uma propriedade editável foi alterado.
CMFCPropertyGridProperty::PushChar Chamado a partir do controle de lista de propriedades quando a propriedade é selecionada e o usuário insere um novo caractere.
CMFCPropertyGridProperty::Redraw Redesenha a propriedade.
CMFCPropertyGridProperty::RemoveAllOptions Remove todas as opções (itens) de uma propriedade.
CMFCPropertyGridProperty::RemoveSubItem Remove o subitem especificado.
CMFCPropertyGridProperty::ResetOriginalValue Restaura o valor original de uma propriedade editada.
CMFCPropertyGridProperty::SetData Associa um valor DWORD a uma propriedade.
CMFCPropertyGridProperty::SetDescription Especifica o texto que descreve a propriedade atual.
CMFCPropertyGridProperty::SetName Define o nome de uma propriedade.
CMFCPropertyGridProperty::SetOriginalValue Define o valor original de uma propriedade editável.
CMFCPropertyGridProperty::SetValue Define o valor de uma propriedade de grade de propriedades.
CMFCPropertyGridProperty::Show Mostra ou oculta uma propriedade.

Métodos Protegidos

Designação Descrição
CMFCPropertyGridProperty::CreateCombo Chamado pela estrutura para adicionar uma caixa de combinação a uma propriedade.
CMFCPropertyGridProperty::HasButton Indica se uma propriedade contém um botão.
CMFCPropertyGridProperty::Init Chamado pela estrutura para inicializar um objeto de propriedade.
CMFCPropertyGridProperty::IsSubItem Indica se a propriedade especificada é um subitem da propriedade atual.
CMFCPropertyGridProperty::IsValueChanged Indica se o valor da propriedade atual foi alterado.
CMFCPropertyGridProperty::OnCtlColor Chamado pela estrutura quando ele deve recuperar um pincel para preencher a cor de plano de fundo de uma propriedade.
CMFCPropertyGridProperty::OnDestroyWindow Chamado pela estrutura quando uma propriedade é destruída ou quando a edição é concluída.
CMFCPropertyGridProperty::OnKillFocus Chamado pela estrutura quando a propriedade perde o foco de entrada.

Membros de dados

Designação Descrição
CMFCPropertyGridProperty::m_strFormatDouble Formatar cadeia de caracteres para um valor do tipo double.
CMFCPropertyGridProperty::m_strFormatFloat Formatar cadeia de caracteres para um valor do tipo float.
CMFCPropertyGridProperty::m_strFormatLong Formatar cadeia de caracteres para um valor do tipo long.
CMFCPropertyGridProperty::m_strFormatShort Formatar cadeia de caracteres para um valor do tipo short.

Comentários

Use um objeto CMFCPropertyGridProperty para representar uma propriedade, que você adiciona a um controle de lista de propriedades. Para obter mais informações, consulte CMFCPropertyGridCtrl Class.

Um objeto de propriedade pode representar tipos de dados como cadeias de caracteres, datas e valores booleanos ou inteiros. Ele pode conter propriedades filho ou pode conter um controle, como uma caixa de combinação ou um controle de botão.

Exemplo

O exemplo a seguir demonstra como construir um objeto CMFCPropertyGridProperty. O exemplo também demonstra como usar vários métodos na classe CMFCPropertyGridProperty para adicionar uma opção, adicionar um subitem, habilitar uma propriedade e mostrar uma propriedade. Este exemplo faz parte do exemplo New Controls.

CMFCPropertyGridProperty *pGroup1 = new CMFCPropertyGridProperty(_T("Appearance"));

// construct a COleVariant object.
COleVariant var3DLook((short)VARIANT_FALSE, VT_BOOL);

pGroup1->AddSubItem(new CMFCPropertyGridProperty(_T("3D Look"), var3DLook,
                                                 _T("Specifies the dialog's font will be nonbold and controls will have a 3D border")));

CMFCPropertyGridProperty *pProp = new CMFCPropertyGridProperty(_T("Border"),
                                                               _T("Dialog Frame"), _T("One of: None, Thin, Resizable, or Dialog Frame"));
pProp->AddOption(_T("None"));
pProp->AddOption(_T("Thin"));
pProp->AddOption(_T("Resizable"));
pProp->AddOption(_T("Dialog Frame"));
pProp->AllowEdit(FALSE);

pGroup1->AddSubItem(pProp);
pGroup1->AddSubItem(new CMFCPropertyGridProperty(_T("Caption"), (COleVariant) _T("About NewControlsDemo"), _T("Specifies the text that will be displayed in the dialog's title bar")));
pGroup1->AdjustButtonRect();
pGroup1->AllowEdit();
pGroup1->Enable();
pGroup1->Show();
pGroup1->Redraw();

Hierarquia de herança

CObject

CMFCPropertyGridProperty

Requerimentos

Cabeçalho:afxpropertygridctrl.h

CMFCPropertyGridProperty::AddOption

Adiciona um novo item de lista a um controle de lista de propriedades.

BOOL AddOption(
    LPCTSTR lpszOption,
    BOOL bInsertUnique=TRUE);

Parâmetros

lpszOption
[em] O item de lista (opção) a ser adicionado.

bInsertUnique
[em] TRUE adicionar o item de lista somente se ele ainda não existir; caso contrário, FALSE. O valor padrão é TRUE.

Valor de retorno

TRUE, o que significa que o item de lista é adicionado. Caso contrário, FALSE, o que significa que o item de lista não é adicionado porque o parâmetro bInsertUnique é TRUE e o item de lista especificado pelo parâmetro lpszOption já existe.

CMFCPropertyGridProperty::AddSubItem

Adiciona um item filho a uma propriedade.

BOOL AddSubItem(CMFCPropertyGridProperty* pProp);

Parâmetros

pProp
[em] Ponteiro para uma propriedade a ser adicionada.

Valor de retorno

TRUE se a propriedade especificada for adicionada com êxito como uma propriedade filho. FALSE se a propriedade não for adicionada porque já ocorre na propriedade pai.

Comentários

Use esse método para criar uma lista hierárquica de propriedades pai e filho. Depois que uma propriedade filho é adicionada, a propriedade pai exibe automaticamente um controle de caixa de expansão designado por um sinal de adição (+). Quando o usuário seleciona o sinal de adição, a propriedade pai se expande e exibe todos os itens de propriedade filho.

CMFCPropertyGridProperty::AdjustButtonRect

Chamado pelo controle de lista de propriedades pai para dizer a uma propriedade para redimensionar o retângulo delimitador de um botão incorporado.

virtual void AdjustButtonRect();

Comentários

Por padrão, este método:

  • Ajusta a largura do botão igual à altura do botão mais três pixels.
  • Move o retângulo delimitador do botão para a borda direita da propriedade.
  • Desloca o botão 1 pixel abaixo da borda superior da propriedade.

CMFCPropertyGridProperty::AdjustInPlaceEditRect

Recupera os limites da caixa de texto e do controle de botão giratório opcional que são usados para definir um valor de propriedade.

virtual void AdjustInPlaceEditRect(
    CRect& rectEdit,
    CRect& rectSpin);

Parâmetros

rectEdit
[saídas] Quando esse método retorna, um retângulo que especifica os limites da caixa de texto para o valor da propriedade.

rectSpin
[saídas] Quando esse método retorna, um retângulo que especifica os limites do controle de botão de rotação para o valor da propriedade. Ou, se a propriedade não suportar um botão giratório, um retângulo vazio.

Comentários

A área de valor de uma propriedade consiste em uma caixa de texto e, possivelmente, um botão de opção , como um controle de botão giratório. Esse método calcula as dimensões da caixa de texto e do botão de opção e, em seguida, retorna esses valores nos parâmetros especificados.

CMFCPropertyGridProperty::AllowEdit

Torna uma propriedade editável ou somente leitura.

void AllowEdit(BOOL bAllow=TRUE);

Parâmetros

bAllow
[em] TRUE tornar a propriedade editável; FALSE tornar a propriedade somente leitura. O valor padrão é TRUE.

CMFCPropertyGridProperty::CMFCPropertyGridProperty

Constrói um objeto CMFCPropertyGridProperty.

CMFCPropertyGridProperty(
    const CString& strGroupName,
    DWORD_PTR dwData=0,
    BOOL bIsValueList=FALSE);

CMFCPropertyGridProperty(
    const CString& strName,
    const _variant_t& varValue,
    LPCTSTR lpszDescr=NULL,
    DWORD_PTR dwData=0,
    LPCTSTR lpszEditMask=NULL,
    LPCTSTR lpszEditTemplate=NULL,
    LPCTSTR lpszValidChars=NULL);

Parâmetros

strGroupName
[em] O nome do grupo. Um grupo é uma coleção de propriedades relacionadas em um controle de grade de propriedades. Se o controle for exibido hierarquicamente, o nome do grupo será exibido como um título de categoria na linha acima do grupo.

dwData
[em] Dados específicos do aplicativo, como um inteiro ou um ponteiro para outros dados associados à propriedade. O valor padrão é 0.

strName
[em] O nome da propriedade.

varValue
[em] O valor do imóvel.

lpszDescr
[em] A descrição do imóvel. O valor padrão é NULL.

lpszEditMask
[em] A máscara de edição, se a propriedade for um controle de edição mascarado. O valor padrão é NULL.

lpszEditTemplate
[em] O modelo de edição, se a propriedade for um controle de edição mascarado. O valor padrão é NULL.

lpszValidChars
[em] Uma lista de caracteres válidos, se a propriedade for um controle de edição mascarado. O valor padrão é NULL.

bIsValueList
[em] TRUE se a propriedade representa uma lista de valores; FALSE se a propriedade representa um único valor. O valor padrão é FALSE.

CMFCPropertyGridProperty::CreateCombo

Chamado pela estrutura para adicionar uma caixa de combinação a uma propriedade.

virtual CComboBox* CreateCombo(
    CWnd* pWndParent,
    CRect rect);

Parâmetros

pWndParent
[em] Ponteiro para a janela pai da caixa de combinação.

rect
[em] O retângulo delimitador da caixa de combinação.

Valor de retorno

Ponteiro para um novo objeto CComboBox.

CMFCPropertyGridProperty::CreateInPlaceEdit

Chamado pela estrutura para criar um controle editável para uma propriedade.

virtual CWnd* CreateInPlaceEdit(
    CRect rectEdit,
    BOOL& bDefaultFormat);

Parâmetros

rectEdit
[em] O retângulo delimitador do controle editável.

bDefaultFormat
[in] TRUE usar o formato de propriedade padrão para definir o texto do controle editável; caso contrário, FALSE.

Valor de retorno

Um ponteiro para o controle editável se esse método for bem-sucedido; caso contrário, NULL.

Comentários

Esse método usa os valores dos parâmetros varValue, lpszEditMask, lpszEditTemplatee lpszValidChars especificados no construtor de classe CMFCPropertyGridProperty. Por padrão, esse método suporta os tipos de variante varValue. Isso inclui VT_BSTR, VT_R4, VT_R8, VT_UI1, VT_I2, VT_INT, VT_UINT, VT_I4, VT_UI2, VT_UI4e VT_BOOL.

Esse método cria um controle de CMFCMaskedEdit se um ou mais dos parâmetros lpszEditMask, lpszEditTemplateou lpszValidChars forem especificados; caso contrário, ele cria um controle de CEdit.

CMFCPropertyGridProperty::CreateSpinControl

Chamado pela estrutura para criar um controle de botão giratório editável.

virtual CSpinButtonCtrl* CreateSpinControl(CRect rectSpin);

Parâmetros

rectSpin
[em] Um retângulo que define onde o controle de botão giratório editável é criado.

Valor de retorno

Um ponteiro para um novo objeto CMFCSpinButtonCtrl que é convertido como um ponteiro para um objeto CSpinButtonCtrl.

Comentários

Chame o método CMFCPropertyGridProperty::EnableSpinControl para exibir um controle de botão giratório editável na borda direita da propriedade.

CMFCPropertyGridProperty::Enable

Habilita ou desabilita uma propriedade.

void Enable(BOOL bEnable=TRUE);

Parâmetros

bEnable
[em] TRUE para viabilizar o imóvel; FALSE desativar a propriedade. As propriedades desativadas não respondem à entrada do mouse ou teclado. O valor padrão é TRUE.

CMFCPropertyGridProperty::EnableSpinControl

Habilita ou desabilita um controle de botão giratório que é usado para modificar um valor de propriedade.

void EnableSpinControl(
    BOOL bEnable=TRUE,
    int nMin=0,
    int nMax=0);

Parâmetros

bEnable
[em] TRUE para ativar o controle do botão giratório; FALSE desativar o controle de botão giratório. O valor padrão é TRUE.

nMin
[em] O valor mínimo do controle de botão de rotação. O valor padrão é 0.

nMax
[em] O valor máximo do controle de botão de rotação. O valor padrão é 0.

Comentários

A estrutura cria automaticamente um controle de botão giratório quando uma propriedade está prestes a ser editada.

O tipo de propriedade, que é especificado pelo parâmetro varValue do construtor CMFCPropertyGridProperty::CMFCPropertyGridProperty, deve ser um tipo de variante suportado. Caso contrário, esse método afirma no modo de depuração. Os tipos suportados incluem VT_INT, VT_UINT, VT_I2, VT_I4, VT_UI2e VT_UI4.

CMFCPropertyGridProperty::Expand

Expande ou recolhe uma propriedade que contém subpropriedades.

void Expand(BOOL bExpand=TRUE);

Parâmetros

bExpand
[em] TRUE expandir o imóvel; FALSE para colapsar a propriedade. O valor padrão é TRUE.

CMFCPropertyGridProperty::FormatProperty

Formata a representação de texto de um valor de propriedade.

virtual CString FormatProperty();

Valor de retorno

A representação de texto do valor da propriedade.

Comentários

Esse método é chamado pela estrutura antes que o valor da propriedade seja exibido.

CMFCPropertyGridProperty::GetData

Recupera um valor de DWORD associado a uma propriedade.

DWORD_PTR GetData() const;

Valor de retorno

Um valor DWORD.

Comentários

Os dados retornados são um valor específico do aplicativo, como um número ou um ponteiro para outros dados. Especifique o valor de dados ao construir a propriedade ou ao chamar o método CMFCPropertyGridProperty::SetData.

CMFCPropertyGridProperty::GetDescription

Recupera uma descrição da propriedade.

const CString& GetDescription() const;

Valor de retorno

Uma cadeia de caracteres de texto que contém a descrição da propriedade.

Comentários

O controle de lista de propriedades também usa esse método para exibir a descrição da propriedade.

CMFCPropertyGridProperty::GetExpandedSubItems

Recupera o número de subitens expandidos.

int GetExpandedSubItems(BOOL bIncludeHidden=TRUE) const;

Parâmetros

bIncludeHidden
[em] TRUE incluir os subitens ocultos na contagem; caso contrário, FALSE. O valor padrão é TRUE.

Valor de retorno

O número de subitens expandidos.

CMFCPropertyGridProperty::GetHierarchyLevel

Recupera o índice baseado em zero do nível hierárquico da propriedade.

int GetHierarchyLevel() const;

Valor de retorno

O nível hierárquico da propriedade.

CMFCPropertyGridProperty::GetName

Recupera o nome da propriedade.

LPCTSTR GetName() const;

Valor de retorno

Ponteiro para uma cadeia de caracteres que contém o nome da propriedade.

CMFCPropertyGridProperty::GetNameTooltip

Chamado pela estrutura para exibir o nome da propriedade em uma dica de ferramenta.

virtual CString GetNameTooltip();

Valor de retorno

Uma cadeia de caracteres que contém o nome da propriedade. Por padrão, o valor de retorno é a cadeia de caracteres vazia.

CMFCPropertyGridProperty::GetOption

Recupera o texto da opção especificada por um índice.

LPCTSTR GetOption(int nIndex) const;

Parâmetros

nIndex
O índice baseado em zero do item de lista de propriedades (opção) a ser recuperado.

Valor de retorno

Ponteiro para uma cadeia de caracteres que contém o texto da opção.

CMFCPropertyGridProperty::GetOptionCount

Recupera o número de opções que pertencem a uma propriedade.

int GetOptionCount() const;

Valor de retorno

O número de itens da lista de propriedades (opções) contidos no controle de propriedade.

Comentários

Chame o método CMFCPropertyGridProperty::AddOption para adicionar itens à lista de propriedades. Chame o método CMFCPropertyGridProperty::RemoveAllOptions para remover todos os itens.

CMFCPropertyGridProperty::GetOriginalValue

Recupera o valor inicial da propriedade atual.

const COleVariant& GetOriginalValue() const;

Valor de retorno

O valor original da propriedade atual.

Comentários

Use esse método para desfazer o efeito de uma operação de edição que altera o valor da propriedade atual.

O valor original da propriedade current é definido pelo construtor CMFCPropertyGridProperty::CMFCPropertyGridProperty, modificado pelo método CMFCPropertyGridProperty::SetOriginalValue e redefinido pelo método CMFCPropertyGridProperty::ResetOriginalValue.

CMFCPropertyGridProperty::GetParent

Recupera um ponteiro para uma propriedade pai.

CMFCPropertyGridProperty* GetParent() const;

Valor de retorno

Um ponteiro para um objeto de propriedade pai ou NULL para a propriedade de nível superior.

CMFCPropertyGridProperty::GetRect

Recupera o retângulo delimitador de uma propriedade.

CRect GetRect() const;

Valor de retorno

Um objeto CRect que descreve o retângulo delimitador.

CMFCPropertyGridProperty::GetSubItem

Recupera uma subpropriedade identificada por um índice baseado em zero.

CMFCPropertyGridProperty* GetSubItem(int nIndex) const;

Parâmetros

nIndex
[em] O índice baseado em zero da propriedade a ser recuperada. Este parâmetro é inválido se for menor que zero ou maior que ou igual ao número de subpropriedades.

Valor de retorno

Um ponteiro para um objeto de propriedade que é um item filho dessa propriedade.

-ou-

No modo de varejo, NULL se o parâmetro nIndex for inválido. No modo de depuração, esse método afirma.

CMFCPropertyGridProperty::GetSubItemsCount

Recupera o número de subitens.

int GetSubItemsCount() const;

Valor de retorno

O número de itens filho.

CMFCPropertyGridProperty::GetValue

Recupera um valor de propriedade.

virtual const _variant_t& GetValue() const;

Valor de retorno

Uma variante que contém o valor da propriedade.

CMFCPropertyGridProperty::GetValueTooltip

Chamado pela estrutura para recuperar a representação de texto do valor da propriedade que é exibida em uma dica de ferramenta.

virtual CString GetValueTooltip();

Valor de retorno

Um objeto CString que contém a representação textual do valor da propriedade. Por padrão, esse valor é a cadeia de caracteres vazia.

CMFCPropertyGridProperty::HasButton

Indica se uma propriedade contém um botão.

virtual BOOL HasButton() const;

Valor de retorno

TRUE se uma propriedade contém um botão (ou lista de propriedades); caso contrário, FALSE.

CMFCPropertyGridProperty::HitTest

Aponta para o objeto de propriedade que corresponde ao item de lista de propriedades que corresponde a um ponto.

CMFCPropertyGridProperty* HitTest(
    CPoint point,
    CMFCPropertyGridProperty::ClickArea* pnArea=NULL);

CMFCPropertyGridProperty* HitTest(
    CPoint pt,
    CMFCPropertyGridProperty::ClickArea* pnArea=NULL,
    BOOL bPropsOnly=FALSE) const;

Parâmetros

point
[em] O ponto a testar, nas coordenadas do cliente. Este parâmetro é normalmente o local atual do ponteiro do mouse.

pt
[em] O ponto a testar, nas coordenadas do cliente.

pnArea
[saídas] Quando esse método retorna, indica a área que contém o ponto especificado. Para obter mais informações, consulte Observações. O valor padrão é NULL.

bPropsOnly
[em] TRUE testar qualquer área no controle da propriedade; FALSE testar apenas a área de descrição. O valor padrão é FALSE.

Valor de retorno

Um ponteiro para um objeto de propriedade ou NULL.

Comentários

Por padrão, esse método testa subitens de propriedade se o ponto especificado não for encontrado em nenhum dos itens de propriedade.

A tabela a seguir lista os valores que podem ser retornados para o parâmetro pnArea.

Área Descrição
ClickArea::ClickExpandBox O controle de caixa de expansão, que é designado por um sinal de adição (+).
ClickArea::ClickName O nome da propriedade.
ClickArea::ClickValue O valor do imóvel.

CMFCPropertyGridProperty::Init

Chamado pela estrutura para inicializar um objeto de propriedade.

void Init();

CMFCPropertyGridProperty::IsAllowEdit

Indica se uma propriedade é editável.

BOOL IsAllowEdit() const;

Valor de retorno

TRUE se a propriedade é editável; caso contrário, FALSE.

CMFCPropertyGridProperty::IsEnabled

Indica se uma propriedade está habilitada ou desabilitada.

BOOL IsEnabled() const;

Valor de retorno

TRUE se a propriedade está habilitada; FALSE se a propriedade estiver desativada.

Comentários

Informa se uma propriedade está habilitada ou desabilitada.

CMFCPropertyGridProperty::IsExpanded

Indica se uma propriedade está expandida ou recolhida.

BOOL IsExpanded() const;

Valor de retorno

TRUE se o imóvel estiver ampliado; FALSE se a propriedade estiver recolhida.

CMFCPropertyGridProperty::IsGroup

Indica se a propriedade atual representa um grupo.

BOOL IsGroup() const;

Valor de retorno

TRUE se o objeto de propriedade atual representa um grupo; FALSE se a propriedade representa um valor.

Comentários

Um grupo é uma coleção de propriedades relacionadas em um controle de grade de propriedades. Se o controle for exibido hierarquicamente, o nome do grupo será exibido como um título de categoria na linha acima do grupo.

CMFCPropertyGridProperty::IsInPlaceEditing

Indica se a propriedade atual é editável.

BOOL IsInPlaceEditing() const;

Valor de retorno

TRUE se a propriedade atual é editável; caso contrário, FALSE.

CMFCPropertyGridProperty::IsModified

Indica se a propriedade atual foi modificada.

BOOL IsModified() const;

Valor de retorno

TRUE se o imóvel for modificado; caso contrário, FALSE.

CMFCPropertyGridProperty::IsParentExpanded

Indica se os pais da propriedade atual estão expandidos.

BOOL IsParentExpanded() const;

Valor de retorno

TRUE se todos os pais do imóvel atual forem expandidos; FALSE se as propriedades pai forem recolhidas.

CMFCPropertyGridProperty::IsSelected

Indica se a propriedade atual está selecionada.

virtual BOOL IsSelected() const;

Valor de retorno

TRUE se a propriedade atual estiver selecionada; caso contrário, FALSE.

CMFCPropertyGridProperty::IsSubItem

Indica se a propriedade especificada é um subitem da propriedade atual.

BOOL IsSubItem(CMFCPropertyGridProperty* pProp) const;

Parâmetros

pProp
[em] Um ponteiro para uma propriedade.

Valor de retorno

TRUE se a propriedade especificada for um subitem da propriedade atual; caso contrário, FALSE.

CMFCPropertyGridProperty::IsValueChanged

Indica se o valor da propriedade atual foi alterado.

virtual BOOL IsValueChanged() const;

Valor de retorno

TRUE se o valor da propriedade atual foi alterado; caso contrário, FALSE.

CMFCPropertyGridProperty::IsVisible

Indica se a propriedade atual está visível.

BOOL IsVisible() const;

Valor de retorno

TRUE se a propriedade atual estiver visível; caso contrário; FALSE.

CMFCPropertyGridProperty::m_strFormatDouble

Contém uma cadeia de caracteres de formato para um valor do tipo double.

static CString m_strFormatDouble;

CMFCPropertyGridProperty::m_strFormatFloat

Contém uma cadeia de caracteres de formato para um valor do tipo float.

static CString m_strFormatFloat;

CMFCPropertyGridProperty::m_strFormatLong

Contém uma cadeia de caracteres de formato para um valor do tipo long.

static CString m_strFormatLong;

CMFCPropertyGridProperty::m_strFormatShort

Contém uma cadeia de caracteres de formato para um valor do tipo short.

static CString m_strFormatShort;

CMFCPropertyGridProperty::OnClickButton

Chamado pela estrutura quando o usuário seleciona um botão que está contido em uma propriedade.

virtual void OnClickButton(CPoint point);

Parâmetros

point
[em] Um ponto, nas coordenadas do cliente.

Comentários

Por padrão, esse método não faz nada.

CMFCPropertyGridProperty::OnClickName

Chamado por um controle de lista de propriedades pai quando um usuário seleciona o campo de nome de uma propriedade.

virtual void OnClickName(CPoint C);

Parâmetros

C
[em] Um ponto, nas coordenadas do cliente.

Comentários

Por padrão, esse método não faz nada.

CMFCPropertyGridProperty::OnClickValue

Chamado por um controle de lista de propriedades pai quando um usuário seleciona o campo de valor de uma propriedade.

virtual BOOL OnClickValue(
    UINT uiMsg,
    CPoint point);

Parâmetros

uiMsg
[em] Uma mensagem do rato.

point
[em] Um ponto, nas coordenadas do cliente.

Valor de retorno

TRUE se a mensagem do rato especificada for processada por este método; caso contrário, FALSE.

Comentários

Por padrão, esse método retorna FALSE se a propriedade atual não for editável. Caso contrário, o controle de edição ou rotação associado a essa propriedade processa a mensagem de mouse especificada e, em seguida, esse método retorna TRUE.

CMFCPropertyGridProperty::OnCloseCombo

Chamado pela estrutura quando uma caixa de combinação contida em uma propriedade é fechada.

virtual void OnCloseCombo();

CMFCPropertyGridProperty::OnCtlColor

Chamado pela estrutura quando ele deve recuperar um pincel para preencher a cor de plano de fundo de uma propriedade.

virtual HBRUSH OnCtlColor(
    CDC* pDC,
    UINT nCtlColor);

Parâmetros

pDC
[em] Ponteiro para um contexto de dispositivo.

nCtlColor
[em] (Este parâmetro não é usado.)

Valor de retorno

A alça para um pincel se este método for bem-sucedido; caso contrário, NULL.

CMFCPropertyGridProperty::OnDblClk

Chamado pela estrutura quando o usuário clica duas vezes em uma propriedade.

virtual BOOL OnDblClk(CPoint point);

Parâmetros

point
[em] Um ponto, nas coordenadas do cliente.

Valor de retorno

TRUE se este método for bem-sucedido; caso contrário, FALSE.

Comentários

Por padrão, esse método seleciona o próximo item de propriedade no controle de lista de propriedades.

CMFCPropertyGridProperty::OnDestroyWindow

Chamado pela estrutura quando uma propriedade é destruída ou quando a edição é concluída.

virtual void OnDestroyWindow();

CMFCPropertyGridProperty::OnDrawButton

Chamado pela estrutura para desenhar um botão que está contido em uma propriedade.

virtual void OnDrawButton(
    CDC* pDC,
    CRect rectButton);

Parâmetros

pDC
[em] Um ponteiro para um contexto de dispositivo.

rectButton
[em] Um retângulo delimitador que especifica onde desenhar um botão.

CMFCPropertyGridProperty::OnDrawDescription

Chamado pela estrutura para desenhar a descrição da propriedade.

virtual void OnDrawDescription(
    CDC* pDC,
    CRect rect);

Parâmetros

pDC
[em] Um ponteiro para um contexto de dispositivo.

rect
[em] Um retângulo delimitador que especifica onde desenhar a descrição da propriedade.

Comentários

Por padrão, esse método desenha o nome da propriedade e a descrição na fonte usada pelo controle de lista de propriedades pai. A descrição da propriedade é desenhada em estilo regular e o nome da propriedade é desenhado em negrito.

CMFCPropertyGridProperty::OnDrawExpandBox

Chamado pela estrutura para desenhar um controle de caixa de expansão perto de uma propriedade que contém subpropriedades.

virtual void OnDrawExpandBox(
    CDC* pDC,
    CRect rectExpand);

Parâmetros

pDC
[em] Um ponteiro para um contexto de dispositivo.

rectExpand
[em] Um retângulo delimitador que especifica onde desenhar o controle de caixa de expansão.

Comentários

Selecione o controle de caixa de expansão para expandir ou recolher uma lista de subpropriedades. O controle de caixa de expansão é designado por um quadrado que contém um sinal de mais (+) ou menos (-). Um sinal de adição indica que a propriedade pode ser expandida para mostrar uma lista de subpropriedades. Um sinal de menos indica que a lista pode ser recolhida para mostrar apenas a propriedade.

CMFCPropertyGridProperty::OnDrawName

Chamado pela estrutura para exibir o nome da propriedade.

virtual void OnDrawName(
    CDC* pDC,
    CRect rect);

Parâmetros

pDC
[em] Um ponteiro para um contexto de dispositivo.

rect
[em] Um retângulo delimitador que especifica onde desenhar o nome da propriedade.

CMFCPropertyGridProperty::OnDrawValue

Chamado pela estrutura para exibir o valor da propriedade.

virtual void OnDrawValue(
    CDC* pDC,
    CRect rect);

Parâmetros

pDC
[em] Um ponteiro para um contexto de dispositivo.

rect
[em] Um retângulo delimitador que especifica onde desenhar o valor da propriedade.

CMFCPropertyGridProperty::OnEdit

Chamado pela estrutura quando o usuário está prestes a modificar um valor de propriedade.

virtual BOOL OnEdit(LPPOINT lptClick);

Parâmetros

lptClick
[em] (Este parâmetro não é usado.) Um ponteiro para um ponto, nas coordenadas do cliente.

Valor de retorno

TRUE se a operação de edição for iniciada com êxito; caso contrário, FALSE.

Comentários

Esta função é chamada pela estrutura quando o usuário está prestes a modificar um valor de propriedade. Por padrão, esse método inicia o editor apropriado para um controle de caixa de combinação ou um controle de rotação.

CMFCPropertyGridProperty::OnEndEdit

Chamado pela estrutura quando o usuário termina de modificar um valor de propriedade.

virtual BOOL OnEndEdit();

Valor de retorno

Esse método sempre retorna TRUE.

Comentários

Por padrão, esse método destrói o controle de edição atual e, em seguida, retorna TRUE.

CMFCPropertyGridProperty::OnKillFocus

Chamado pela estrutura quando a propriedade perde o foco de entrada.

virtual BOOL OnKillFocus(CWnd*);

Parâmetros

CWnd
[em] (Não utilizado.) Ponteiro para uma janela.

Valor de retorno

Esse método sempre retorna TRUE.

Comentários

Por padrão, esse método não faz nada e, em seguida, retorna TRUE. Se você substituir esse método, retorne TRUE se a estrutura puder encerrar a operação de edição quando a propriedade perder o foco de entrada.

CMFCPropertyGridProperty::OnKillSelection

virtual void OnKillSelection(CMFCPropertyGridProperty*);

Parâmetros

[em] CMFCPropertyGridProperty*

Comentários

Por padrão, esse método não faz nada.

CMFCPropertyGridProperty::OnPosSizeChanged

virtual void OnPosSizeChanged(CRect);

Parâmetros

[em] CRect

Comentários

Por padrão, esse método não faz nada.

CMFCPropertyGridProperty::OnRClickName

Chamado pela estrutura quando o usuário seleciona o botão direito do mouse na área de nome da propriedade.

virtual void OnRClickName(CPoint C);

Parâmetros

C
[em] Um ponto, nas coordenadas do cliente.

Comentários

Por padrão, esse método não faz nada.

CMFCPropertyGridProperty::OnRClickValue

Chamado pela estrutura quando o usuário seleciona o botão direito do mouse na área de valor da propriedade.

virtual void OnRClickValue(
    CPoint C,
    BOOL B);

Parâmetros

C
[em] Um ponto, nas coordenadas do cliente.

B
[em] Um booleano.

Comentários

Por padrão, esse método não faz nada e o parâmetro B não tem nenhuma finalidade predefinida.

CMFCPropertyGridProperty::OnSelectCombo

Chamado pela estrutura quando o usuário seleciona um item da caixa de combinação editável.

virtual void OnSelectCombo();

Comentários

Por padrão, esse método usa o texto do item selecionado para atualizar o valor da propriedade.

CMFCPropertyGridProperty::OnSetCursor

Chamado pela estrutura quando o ponteiro do mouse se move para um item de propriedade.

virtual BOOL OnSetCursor() const;

Valor de retorno

TRUE se a propriedade atual é um tipo de variante ou uma lista de valores, e esse método carrega com êxito o cursor do mouse do ponto de inserção (feixe I); caso contrário, FALSE.

Comentários

Este método suporta os seguintes tipos de variantes: VT_INT, VT_I2, VT_I4, VT_UINT, VT_UI1, VT_UI2, VT_UI4, VT_R4, VT_R8e VT_BSTR.

CMFCPropertyGridProperty::OnSetSelection

virtual void OnSetSelection(CMFCPropertyGridProperty*);

Parâmetros

[em] CMFCPropertyGridProperty*

Comentários

Por padrão, esse método não faz nada.

CMFCPropertyGridProperty::OnUpdateValue

Chamado pela estrutura quando o valor de uma propriedade editável foi alterado.

virtual BOOL OnUpdateValue();

Valor de retorno

TRUE se este método for bem-sucedido; caso contrário, FALSE.

CMFCPropertyGridProperty::PushChar

Chamado a partir do controle de lista de propriedades quando a propriedade é selecionada e o usuário insere um novo caractere.

virtual BOOL PushChar(UINT nChar);

Parâmetros

nChar
[em] Um personagem.

Valor de retorno

TRUE se a operação de edição está continuando; caso contrário, FALSE.

Comentários

Este método suporta uma propriedade que é uma lista de valores ou um dos seguintes tipos de variante: VT_INT, VT_I2, VT_I4, VT_UINT, VT_UI1, VT_UI2, VT_UI4, VT_R4, VT_R8e VT_BSTR.

CMFCPropertyGridProperty::Redraw

Redesenha a propriedade.

void Redraw();

CMFCPropertyGridProperty::RemoveAllOptions

Remove todas as opções (itens) de uma propriedade.

void RemoveAllOptions();

Comentários

As opções também são conhecidas como os itens de lista de um controle de lista de propriedades.

CMFCPropertyGridProperty::RemoveSubItem

Remove o subitem especificado.

BOOL RemoveSubItem(
    CMFCPropertyGridProperty*& pProp,
    BOOL bDelete=TRUE);

Parâmetros

pProp
[em] Ponteiro para um subitem de propriedade.

bDelete
[in] TRUE excluir o objeto de propriedade especificado pelo parâmetro pProp; caso contrário, FALSE. O valor padrão é TRUE.

Valor de retorno

Comentários

Especifique FALSE para o parâmetro bDelete se você pretende mover o subitem especificado; ou seja, remova o subitem e adicione-o em outro lugar.

CMFCPropertyGridProperty::ResetOriginalValue

Restaura o valor original de uma propriedade editada.

virtual void ResetOriginalValue();

CMFCPropertyGridProperty::SetData

Associa um valor DWORD a uma propriedade.

void SetData(DWORD_PTR dwData);

Parâmetros

dwData
[em] Um valor de 32 bits específico do aplicativo, como um inteiro ou um ponteiro para outros dados.

Comentários

Use o método CMFCPropertyGridProperty::GetData para recuperar o valor DWORD. Use o método CMFCPropertyGridCtrl::FindItemByData para localizar o item de lista de propriedades associado ao valor DWORD especificado.

CMFCPropertyGridProperty::SetDescription

Especifica o texto que descreve a propriedade atual.

void SetDescription(const CString& strDescr);

Parâmetros

strDescr
[em] Texto que descreve a propriedade atual.

CMFCPropertyGridProperty::SetName

Define o nome de uma propriedade.

void SetName(
    LPCTSTR lpszName,
    BOOL bRedraw=TRUE);

Parâmetros

lpszName
[em] O nome da propriedade.

bRedraw
[em] TRUE redesenhar o imóvel imediatamente; caso contrário, FALSE. O valor padrão é TRUE.

CMFCPropertyGridProperty::SetOriginalValue

Define o valor original de uma propriedade editável.

virtual void SetOriginalValue(const COleVariant& varValue);

Parâmetros

varValue
[em] Um valor.

Comentários

Use o método CMFCPropertyGridProperty::ResetOriginalValue para redefinir o valor original de uma propriedade editada.

CMFCPropertyGridProperty::SetValue

Define o valor de uma propriedade de grade de propriedades.

virtual void SetValue(const _variant_t& varValue);

Parâmetros

varValue
[em] Uma referência ao valor para definir a propriedade.

Exemplo: SetValue

void SetPropBarValue(UINT propId, const DWORD& barPropDwordValue)
{
  auto property = propertiesGridCtrlList.FindItemByData(propId);
  if (property != nullptr)
  {
    property->SetValue(static_cast<_variant_t >(barPropDwordValue == 1)); // set value to true or false depending on dword value
  }
}

CMFCPropertyGridProperty::Show

Mostra ou oculta uma propriedade.

void Show(
    BOOL bShow=TRUE,
    BOOL bAdjustLayout=TRUE);

Parâmetros

bShow
[in] TRUE para exibir a propriedade atual e seus subitens; FALSE ocultar a propriedade atual e seus subitens. O valor padrão é TRUE.

bAdjustLayout
[em] TRUE recalcular como desenhar o rótulo e o valor de uma propriedade e, em seguida, desenhar a propriedade; FALSE usar os cálculos existentes para desenhar a propriedade. O valor padrão é TRUE.

Ver também

Gráfico de Hierarquia
Aulas
CMFCPropertyGridCtrl classe