Clase CMFCPropertyGridProperty
Un objeto CMFCPropertyGridProperty
representa un elemento de lista de un control de lista de propiedades.
Para obtener información más detallada, consulte el código fuente ubicado en la carpeta mfc
de la instalación de Visual Studio. Por ejemplo, %ProgramFiles(x86)%\Microsoft Visual Studio\2019\Enterprise\VC\Tools\MSVC\14.29.30133\atlmfc\src\mfc
.
Sintaxis
class CMFCPropertyGridProperty : public CObject
Miembros
Constructores públicos
Nombre | Descripción |
---|---|
CMFCPropertyGridProperty::CMFCPropertyGridProperty |
Construye un objeto CMFCPropertyGridProperty . |
CMFCPropertyGridProperty::~CMFCPropertyGridProperty |
Destructor. |
Métodos públicos
Nombre | Descripción |
---|---|
CMFCPropertyGridProperty::AddOption |
Agrega un nuevo elemento de lista a un control de lista de propiedades. |
CMFCPropertyGridProperty::AddSubItem |
Agrega un elemento secundario a una propiedad. |
CMFCPropertyGridProperty::AdjustButtonRect |
El control de lista de propiedades primaria llama a este elemento para indicar a una propiedad que cambie el tamaño del rectángulo delimitador de un botón incrustado. |
CMFCPropertyGridProperty::AdjustInPlaceEditRect |
Recupera los límites del cuadro de texto y el control de botón de número opcional que se usan para establecer un valor de propiedad. |
CMFCPropertyGridProperty::AllowEdit |
Hace que una propiedad sea editable o de solo lectura. |
CMFCPropertyGridProperty::CreateInPlaceEdit |
El marco de trabajo llama a este elemento para crear un control editable para una propiedad. |
CMFCPropertyGridProperty::CreateSpinControl |
El marco de trabajo llama a este elemento para crear un control de botón de número editable. |
CMFCPropertyGridProperty::Enable |
Habilita o deshabilita una propiedad. |
CMFCPropertyGridProperty::EnableSpinControl |
Habilita o deshabilita un control de botón de número que se usa para modificar un valor de propiedad. |
CMFCPropertyGridProperty::Expand |
Expande o contrae una propiedad que contiene subpropiedades. |
CMFCPropertyGridProperty::FormatProperty |
Da formato a la representación de texto de un valor de propiedad. |
CMFCPropertyGridProperty::GetData |
Recupera un valor DWORD asociado a una propiedad. |
CMFCPropertyGridProperty::GetDescription |
Recupera una descripción de propiedad. |
CMFCPropertyGridProperty::GetExpandedSubItems |
Recupera el número de subelementos expandidos. |
CMFCPropertyGridProperty::GetHierarchyLevel |
Recupera el índice de base cero del nivel de jerarquía de la propiedad. |
CMFCPropertyGridProperty::GetName |
Recupera el nombre de la propiedad. |
CMFCPropertyGridProperty::GetNameTooltip |
El marco de trabajo llama a este elemento para mostrar el nombre de la propiedad en una información sobre herramientas. |
CMFCPropertyGridProperty::GetOption |
Recupera el texto de la opción que especifica un índice. |
CMFCPropertyGridProperty::GetOptionCount |
Recupera el número de opciones que pertenecen a una propiedad. |
CMFCPropertyGridProperty::GetOriginalValue |
Recupera el valor inicial de la propiedad actual. |
CMFCPropertyGridProperty::GetParent |
Recupera un puntero a una propiedad primaria. |
CMFCPropertyGridProperty::GetRect |
Recupera el rectángulo delimitador de una propiedad. |
CMFCPropertyGridProperty::GetSubItem |
Recupera una subpropiedad identificada por un índice de base cero. |
CMFCPropertyGridProperty::GetSubItemsCount |
Recupera el número de subelementos. |
CMFCPropertyGridProperty::GetThisClass |
El marco de trabajo usa este elemento para obtener un puntero al objeto CRuntimeClass asociado a este tipo de clase. |
CMFCPropertyGridProperty::GetValue |
Recupera un valor de propiedad. |
CMFCPropertyGridProperty::GetValueTooltip |
El marco de trabajo llama a este elemento para recuperar la representación de texto del valor de propiedad que se muestra a continuación en una información sobre herramientas. |
CMFCPropertyGridProperty::HitTest |
Apunta al objeto de propiedad que corresponde al elemento de lista de propiedades que corresponde a un punto. |
CMFCPropertyGridProperty::IsAllowEdit |
Indica si una propiedad es editable. |
CMFCPropertyGridProperty::IsEnabled |
Indica si una propiedad está habilitada o deshabilitada. |
CMFCPropertyGridProperty::IsExpanded |
Indica si una propiedad está expandida o contraída. |
CMFCPropertyGridProperty::IsGroup |
Indica si la propiedad actual representa un grupo. |
CMFCPropertyGridProperty::IsInPlaceEditing |
Indica si la propiedad actual es editable. |
CMFCPropertyGridProperty::IsModified |
Indica si la propiedad actual se ha modificado. |
CMFCPropertyGridProperty::IsParentExpanded |
Indica si los elementos primarios de la propiedad actual se han expandido. |
CMFCPropertyGridProperty::IsSelected |
Indica si la propiedad actual se ha seleccionado. |
CMFCPropertyGridProperty::IsVisible |
Indica si la propiedad actual está visible. |
CMFCPropertyGridProperty::OnClickButton |
Lo llama el marco cuando el usuario selecciona un botón que se encuentra en una propiedad. |
CMFCPropertyGridProperty::OnClickName |
El control de la lista de propiedades primaria llama este elemento cuando un usuario selecciona el campo de nombre de una propiedad. |
CMFCPropertyGridProperty::OnClickValue |
El control de la lista de propiedades primaria llama este elemento cuando un usuario selecciona el campo de valor de una propiedad. |
CMFCPropertyGridProperty::OnCloseCombo |
El marco de trabajo llama a este elemento cuando se cierra un cuadro combinado contenido en una propiedad. |
CMFCPropertyGridProperty::OnDblClk |
El marco de trabajo llama a este elemento cuando el usuario hace clic en una propiedad. |
CMFCPropertyGridProperty::OnDrawButton |
El marco de trabajo llama a este elemento para dibujar un botón que se encuentra en una propiedad. |
CMFCPropertyGridProperty::OnDrawDescription |
El marco de trabajo llama a este elemento para mostrar la descripción de la propiedad. |
CMFCPropertyGridProperty::OnDrawExpandBox |
Lo llama el marco para dibujar un control de cuadro de expansión cerca de una propiedad que contiene subpropiedades. |
CMFCPropertyGridProperty::OnDrawName |
El marco de trabajo llama a este elemento para mostrar el nombre de la propiedad. |
CMFCPropertyGridProperty::OnDrawValue |
Lo llama el marco para mostrar el valor de la propiedad. |
CMFCPropertyGridProperty::OnEdit |
Lo llama el marco cuando el usuario está a punto de modificar un valor de propiedad. |
CMFCPropertyGridProperty::OnEndEdit |
El marco de trabajo llama a este elemento cuando el usuario ha terminado de modificar un valor de propiedad. |
CMFCPropertyGridProperty::OnKillSelection |
|
CMFCPropertyGridProperty::OnPosSizeChanged |
|
CMFCPropertyGridProperty::OnRClickName |
El marco de trabajo llama a este elemento cuando el usuario selecciona el botón derecho del mouse en el área de nombre de propiedad. |
CMFCPropertyGridProperty::OnRClickValue |
El marco de trabajo llama a este elemento cuando el usuario selecciona el botón derecho del mouse en el área de valor de propiedad. |
CMFCPropertyGridProperty::OnSelectCombo |
El marco de trabajo llama a este elemento cuando el usuario selecciona un elemento del cuadro combinado editable. |
CMFCPropertyGridProperty::OnSetCursor |
El marco de trabajo llama a este elemento cuando el puntero del mouse se mueve a un elemento de propiedad. |
CMFCPropertyGridProperty::OnSetSelection |
|
CMFCPropertyGridProperty::OnUpdateValue |
Lo llama el marco cuando el valor de una propiedad editable ha cambiado. |
CMFCPropertyGridProperty::PushChar |
Este elemento se llama desde el control de lista de propiedades cuando se selecciona la propiedad y el usuario escribe un nuevo carácter. |
CMFCPropertyGridProperty::Redraw |
Vuelve a dibujar la propiedad. |
CMFCPropertyGridProperty::RemoveAllOptions |
Quita todas las opciones (elementos) de una propiedad. |
CMFCPropertyGridProperty::RemoveSubItem |
Quita el subelemento especificado. |
CMFCPropertyGridProperty::ResetOriginalValue |
Restaura el valor original de una propiedad editable. |
CMFCPropertyGridProperty::SetData |
Asocia un valor DWORD a una propiedad. |
CMFCPropertyGridProperty::SetDescription |
Especifica el texto que describe la propiedad actual. |
CMFCPropertyGridProperty::SetName |
Establece el nombre de una propiedad. |
CMFCPropertyGridProperty::SetOriginalValue |
Establece el valor original de una propiedad editable. |
CMFCPropertyGridProperty::SetValue |
Establece el valor de una propiedad de cuadrícula de propiedades. |
CMFCPropertyGridProperty::Show |
Muestra u oculta una propiedad. |
Métodos protegidos
Nombre | Descripción |
---|---|
CMFCPropertyGridProperty::CreateCombo |
El marco de trabajo llama a este elemento para agregar un cuadro combinado a una propiedad. |
CMFCPropertyGridProperty::HasButton |
Indica si una propiedad contiene un botón. |
CMFCPropertyGridProperty::Init |
El marco de trabajo llama a este elemento para inicializar un objeto de propiedad. |
CMFCPropertyGridProperty::IsSubItem |
Indica si la propiedad especificada es un subelemento de la propiedad actual. |
CMFCPropertyGridProperty::IsValueChanged |
Indica si el valor de la propiedad actual ha cambiado. |
CMFCPropertyGridProperty::OnCtlColor |
El marco de trabajo llama a este elemento cuando debe recuperar un pincel para rellenar el color de fondo de una propiedad. |
CMFCPropertyGridProperty::OnDestroyWindow |
El marco de trabajo llama a este elemento cuando se destruye una propiedad o cuando finaliza la edición. |
CMFCPropertyGridProperty::OnKillFocus |
El marco de trabajo llama a este elemento cuando la propiedad pierde el foco de entrada. |
Miembros de datos
Nombre | Descripción |
---|---|
CMFCPropertyGridProperty::m_strFormatDouble |
Cadena de formato para un valor de tipo double. |
CMFCPropertyGridProperty::m_strFormatFloat |
Cadena de formato para un valor de tipo float. |
CMFCPropertyGridProperty::m_strFormatLong |
Cadena de formato para un valor de tipo long. |
CMFCPropertyGridProperty::m_strFormatShort |
Cadena de formato para un valor de tipo short. |
Comentarios
Utilice un objeto CMFCPropertyGridProperty
para representar una propiedad, que después se agregará a un control de lista de propiedades. Para obtener más información, consulte la CMFCPropertyGridCtrl
clase.
Un objeto de propiedad puede representar tipos de datos como cadenas, fechas y valores booleanos o enteros. Puede contener propiedades secundarias o puede contener un control como un cuadro combinado o un control de botón.
Ejemplo
En el ejemplo siguiente, se muestra cómo construir un objeto CMFCPropertyGridProperty
. En el ejemplo también se muestra cómo usar varios métodos en la CMFCPropertyGridProperty
clase para agregar una opción, agregar un subelemento, habilitar una propiedad y mostrar una propiedad. Este ejemplo forma parte del ejemplo de controles nuevos.
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();
Jerarquía de herencia
Requisitos
Encabezado: afxpropertygridctrl.h
CMFCPropertyGridProperty::AddOption
Agrega un nuevo elemento de lista a un control de lista de propiedades.
BOOL AddOption(
LPCTSTR lpszOption,
BOOL bInsertUnique=TRUE);
Parámetros
lpszOption
[in] Elemento de lista (opción) que se va a agregar.
bInsertUnique
[in] TRUE
para agregar el elemento de lista solo si aún no existe; de lo contrario, FALSE
. El valor predeterminado es TRUE
.
Valor devuelto
TRUE
, lo que significa que se agrega el elemento de lista. De lo contrario, FALSE
, lo que significa que el elemento de lista no se agrega porque el parámetro bInsertUnique
es TRUE
y el elemento de lista especificado por el parámetro lpszOption
ya existe.
CMFCPropertyGridProperty::AddSubItem
Agrega un elemento secundario a una propiedad.
BOOL AddSubItem(CMFCPropertyGridProperty* pProp);
Parámetros
pProp
[in] Puntero a una propiedad que se va a agregar.
Valor devuelto
TRUE
si la propiedad especificada se agrega correctamente como una propiedad secundaria. FALSE
si no se agrega la propiedad porque ya se produce en la propiedad primaria.
Comentarios
Use este método para crear una lista jerárquica de propiedades primarias y secundarias. Una vez que se agrega una propiedad secundaria, la propiedad primaria muestra automáticamente un control de cuadro de expansión designado por un signo más (+). Cuando el usuario selecciona el signo más, la propiedad primaria se expande y muestra los elementos de propiedad secundarios.
CMFCPropertyGridProperty::AdjustButtonRect
El control de lista de propiedades primaria llama a este elemento para indicar a una propiedad que cambie el tamaño del rectángulo delimitador de un botón incrustado.
virtual void AdjustButtonRect();
Comentarios
De manera predeterminada este método:
- Ajusta el ancho del botón igual al alto del botón más tres píxeles.
- Mueve el rectángulo delimitador del botón al borde derecho de la propiedad.
- Desplaza el botón 1 píxel debajo del borde superior de la propiedad.
CMFCPropertyGridProperty::AdjustInPlaceEditRect
Recupera los límites del cuadro de texto y el control de botón de número opcional que se usan para establecer un valor de propiedad.
virtual void AdjustInPlaceEditRect(
CRect& rectEdit,
CRect& rectSpin);
Parámetros
rectEdit
[out] Cuando se devuelve este método, un rectángulo que especifica los límites del cuadro de texto para el valor de propiedad.
rectSpin
[out] Cuando se devuelve este método, un rectángulo que especifica los límites del control de botón de número para el valor de propiedad. O bien, un rectángulo vacío si la propiedad no admite un botón de número.
Comentarios
El área de valor de una propiedad consta de un cuadro de texto y posiblemente un botón de opción, como un control de botón de número. Este método calcula las dimensiones del cuadro de texto y el botón de opción y, a continuación, devuelve esos valores en los parámetros especificados.
CMFCPropertyGridProperty::AllowEdit
Hace que una propiedad sea editable o de solo lectura.
void AllowEdit(BOOL bAllow=TRUE);
Parámetros
bAllow
[in] TRUE
para que la propiedad sea editable; FALSE
para que la propiedad sea de solo lectura. El valor predeterminado es TRUE
.
CMFCPropertyGridProperty::CMFCPropertyGridProperty
Construye un 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
[in] Nombre del grupo. Un grupo es una colección de propiedades relacionadas en un control de cuadrícula de propiedades. Si el control se muestra jerárquicamente, el nombre del grupo se muestra como un título de categoría en la fila situada encima del grupo.
dwData
[in] Datos específicos de la aplicación, como un entero o un puntero a otros datos asociados a la propiedad. El valor predeterminado es 0.
strName
[in] Nombre de la propiedad.
varValue
[in] Valor de propiedad.
lpszDescr
[in] Descripción de la propiedad. El valor predeterminado es NULL
.
lpszEditMask
[in] Máscara de edición, si la propiedad es un control de edición enmascarado. El valor predeterminado es NULL
.
lpszEditTemplate
[in] Plantilla de edición, si la propiedad es un control de edición enmascarado. El valor predeterminado es NULL
.
lpszValidChars
[in] Lista de caracteres válidos, si la propiedad es un control de edición enmascarado. El valor predeterminado es NULL
.
bIsValueList
[in] TRUE
si la propiedad representa una lista de valores; FALSE
si la propiedad representa un único valor. El valor predeterminado es FALSE
.
CMFCPropertyGridProperty::CreateCombo
El marco de trabajo llama a este elemento para agregar un cuadro combinado a una propiedad.
virtual CComboBox* CreateCombo(
CWnd* pWndParent,
CRect rect);
Parámetros
pWndParent
[in] Puntero a la ventana primaria del cuadro combinado.
rect
[in] Rectángulo delimitador del cuadro combinado.
Valor devuelto
Puntero a un nuevo objeto CComboBox
.
CMFCPropertyGridProperty::CreateInPlaceEdit
El marco de trabajo llama a este elemento para crear un control editable para una propiedad.
virtual CWnd* CreateInPlaceEdit(
CRect rectEdit,
BOOL& bDefaultFormat);
Parámetros
rectEdit
[in] Rectángulo delimitador del control editable.
bDefaultFormat
[in] TRUE
para usar el formato de propiedad predeterminado para establecer el texto del control editable; de lo contrario, FALSE
.
Valor devuelto
Puntero al control editable si este método se realiza correctamente; de lo contrario, NULL
.
Comentarios
Este método usa los valores de los parámetros varValue
, lpszEditMask
, lpszEditTemplate
y lpszValidChars
que se especifican en el constructor de clase CMFCPropertyGridProperty
. De forma predeterminada, este método admite los tipos variant varValue
. Esto incluye VT_BSTR
, VT_R4
, VT_R8
, VT_UI1
, VT_I2
, VT_INT
, VT_UINT
, VT_I4
, VT_UI2
, VT_UI4
y VT_BOOL
.
Este método crea un control CMFCMaskedEdit
si se especifican uno o varios de los parámetros lpszEditMask
, lpszEditTemplate
o lpszValidChars
; de lo contrario, crea un control CEdit
.
CMFCPropertyGridProperty::CreateSpinControl
El marco de trabajo llama a este elemento para crear un control de botón de número editable.
virtual CSpinButtonCtrl* CreateSpinControl(CRect rectSpin);
Parámetros
rectSpin
[in] Rectángulo que define dónde se crea el control de botón de número editable.
Valor devuelto
Puntero a un nuevo objeto CMFCSpinButtonCtrl
que se convierte como puntero a un objeto CSpinButtonCtrl
.
Comentarios
Llame al método CMFCPropertyGridProperty::EnableSpinControl
para mostrar un control de botón de número editable en el borde derecho de la propiedad.
CMFCPropertyGridProperty::Enable
Habilita o deshabilita una propiedad.
void Enable(BOOL bEnable=TRUE);
Parámetros
bEnable
[in] TRUE
para habilitar la propiedad; FALSE
para deshabilitar la propiedad. Las propiedades deshabilitadas no responden a la entrada del mouse o del teclado. El valor predeterminado es TRUE
.
CMFCPropertyGridProperty::EnableSpinControl
Habilita o deshabilita un control de botón de número que se usa para modificar un valor de propiedad.
void EnableSpinControl(
BOOL bEnable=TRUE,
int nMin=0,
int nMax=0);
Parámetros
bEnable
[in] TRUE
para habilitar el control de botón de número; FALSE
para deshabilitar el control de botón de número. El valor predeterminado es TRUE
.
nMin
[in] Valor mínimo del control de botón de número. El valor predeterminado es 0.
nMax
[in] Valor máximo del control de botón de número. El valor predeterminado es 0.
Comentarios
El marco crea automáticamente un control de botón de número cuando una propiedad está a punto de editarse.
El tipo de propiedad, que se especifica mediante el parámetro varValue
del constructor CMFCPropertyGridProperty::CMFCPropertyGridProperty
, debe ser un tipo de variante admitido. De lo contrario, este método se afirma en modo de depuración. Los tipos no admitidos incluyen VT_INT
, VT_UINT
, VT_I2
, VT_I4
, VT_UI2
y VT_UI4
.
CMFCPropertyGridProperty::Expand
Expande o contrae una propiedad que contiene subpropiedades.
void Expand(BOOL bExpand=TRUE);
Parámetros
bExpand
[in] TRUE
para expandir la propiedad; FALSE
para contraer la propiedad. El valor predeterminado es TRUE
.
CMFCPropertyGridProperty::FormatProperty
Da formato a la representación de texto de un valor de propiedad.
virtual CString FormatProperty();
Valor devuelto
Representación de texto del valor de propiedad.
Comentarios
El marco de trabajo llama a este elemento antes de que se muestre el valor de la propiedad.
CMFCPropertyGridProperty::GetData
Recupera un valor DWORD
asociado a una propiedad.
DWORD_PTR GetData() const;
Valor devuelto
Valor DWORD
.
Comentarios
Los datos que se devuelven son un valor específico de la aplicación, como un número o un puntero a otros datos. Especifique el valor de datos al construir la propiedad o al llamar al método CMFCPropertyGridProperty::SetData
.
CMFCPropertyGridProperty::GetDescription
Recupera una descripción de propiedad.
const CString& GetDescription() const;
Valor devuelto
Cadena de texto que contiene la descripción de la propiedad.
Comentarios
El control de lista de propiedades también usa este método para mostrar la descripción de la propiedad.
CMFCPropertyGridProperty::GetExpandedSubItems
Recupera el número de subelementos expandidos.
int GetExpandedSubItems(BOOL bIncludeHidden=TRUE) const;
Parámetros
bIncludeHidden
[in] TRUE
para incluir los subelementos ocultos en el recuento; de lo contrario, FALSE
. El valor predeterminado es TRUE
.
Valor devuelto
Número de subelementos expandidos.
CMFCPropertyGridProperty::GetHierarchyLevel
Recupera el índice de base cero del nivel de jerarquía de la propiedad.
int GetHierarchyLevel() const;
Valor devuelto
Nivel jerárquico de la propiedad.
CMFCPropertyGridProperty::GetName
Recupera el nombre de la propiedad.
LPCTSTR GetName() const;
Valor devuelto
Puntero a una cadena que contiene el nombre de la propiedad.
CMFCPropertyGridProperty::GetNameTooltip
El marco de trabajo llama a este elemento para mostrar el nombre de la propiedad en una información sobre herramientas.
virtual CString GetNameTooltip();
Valor devuelto
Cadena que contiene el nombre de la propiedad. De manera predeterminada, el valor devuelto es la cadena vacía.
CMFCPropertyGridProperty::GetOption
Recupera el texto de la opción que especifica un índice.
LPCTSTR GetOption(int nIndex) const;
Parámetros
nIndex
Índice de base cero del elemento de lista de propiedad (opción) que se va a recuperar.
Valor devuelto
Puntero a una cadena que contiene el texto de opción.
CMFCPropertyGridProperty::GetOptionCount
Recupera el número de opciones que pertenecen a una propiedad.
int GetOptionCount() const;
Valor devuelto
Número de elementos de lista de propiedades (opciones) contenidos en el control de propiedad.
Comentarios
Llame al método CMFCPropertyGridProperty::AddOption
para agregar elementos a la lista de propiedades. Llame al método CMFCPropertyGridProperty::RemoveAllOptions
para quitar todos los elementos.
CMFCPropertyGridProperty::GetOriginalValue
Recupera el valor inicial de la propiedad actual.
const COleVariant& GetOriginalValue() const;
Valor devuelto
Valor original de la propiedad actual.
Comentarios
Use este método para deshacer el efecto de una operación de edición que cambia el valor de la propiedad actual.
El constructor CMFCPropertyGridProperty::CMFCPropertyGridProperty
establece el valor original de la propiedad actual, modificado por el método CMFCPropertyGridProperty::SetOriginalValue
y restablecido por el método CMFCPropertyGridProperty::ResetOriginalValue
.
CMFCPropertyGridProperty::GetParent
Recupera un puntero a una propiedad primaria.
CMFCPropertyGridProperty* GetParent() const;
Valor devuelto
Puntero a un objeto de propiedad primario o NULL
para la propiedad de nivel superior.
CMFCPropertyGridProperty::GetRect
Recupera el rectángulo delimitador de una propiedad.
CRect GetRect() const;
Valor devuelto
Objeto CRect
que describe el rectángulo delimitador.
CMFCPropertyGridProperty::GetSubItem
Recupera una subpropiedad identificada por un índice de base cero.
CMFCPropertyGridProperty* GetSubItem(int nIndex) const;
Parámetros
nIndex
[in] Índice de base cero de la propiedad que se va a recuperar. Este parámetro no es válido si es menor que cero o mayor o igual que el número de subpropiedades.
Valor devuelto
Puntero a un objeto de propiedad que es un elemento secundario de esta propiedad.
O bien
En el modo comercial, NULL
si el parámetro nIndex
no es válido. En el modo de depuración, este método afirma.
CMFCPropertyGridProperty::GetSubItemsCount
Recupera el número de subelementos.
int GetSubItemsCount() const;
Valor devuelto
Número de elementos secundarios.
CMFCPropertyGridProperty::GetValue
Recupera un valor de propiedad.
virtual const _variant_t& GetValue() const;
Valor devuelto
Variante que contiene el valor de la propiedad.
CMFCPropertyGridProperty::GetValueTooltip
El marco de trabajo llama a este elemento para recuperar la representación de texto del valor de propiedad que se muestra a continuación en una información sobre herramientas.
virtual CString GetValueTooltip();
Valor devuelto
Objeto CString
que contiene la representación textual del valor de propiedad. De manera predeterminada, este valor es la cadena vacía.
CMFCPropertyGridProperty::HasButton
Indica si una propiedad contiene un botón.
virtual BOOL HasButton() const;
Valor devuelto
TRUE
si una propiedad contiene un botón (o lista de propiedades); de lo contrario, FALSE
.
CMFCPropertyGridProperty::HitTest
Apunta al objeto de propiedad que corresponde al elemento de lista de propiedades que corresponde a un punto.
CMFCPropertyGridProperty* HitTest(
CPoint point,
CMFCPropertyGridProperty::ClickArea* pnArea=NULL);
CMFCPropertyGridProperty* HitTest(
CPoint pt,
CMFCPropertyGridProperty::ClickArea* pnArea=NULL,
BOOL bPropsOnly=FALSE) const;
Parámetros
point
[in] Punto para probar en coordenadas de cliente. Este parámetro suele ser la ubicación actual del puntero del mouse.
pt
[in] Punto para probar en coordenadas de cliente.
pnArea
[out] Cuando se devuelve este método, indica el área que contiene el punto especificado. Para obtener más información, vea la sección Comentarios. El valor predeterminado es NULL
.
bPropsOnly
[in] TRUE
para probar cualquier área del control de propiedad; FALSE
para probar solo el área de descripción. El valor predeterminado es FALSE
.
Valor devuelto
Puntero a un objeto de propiedad o NULL
.
Comentarios
De forma predeterminada, este método prueba los subelementos de propiedad si el punto especificado no se encuentra dentro de ninguno de los elementos de propiedad.
En la tabla siguiente se enumeran los valores que se pueden devolver al parámetro pnArea
.
Área | Descripción |
---|---|
ClickArea::ClickExpandBox |
Control de cuadro de expansión, que se designa mediante un signo más (+). |
ClickArea::ClickName |
Nombre de la propiedad. |
ClickArea::ClickValue |
Valor de propiedad. |
CMFCPropertyGridProperty::Init
El marco de trabajo llama a este elemento para inicializar un objeto de propiedad.
void Init();
CMFCPropertyGridProperty::IsAllowEdit
Indica si una propiedad es editable.
BOOL IsAllowEdit() const;
Valor devuelto
TRUE
si la propiedad es editable; en caso contrario, FALSE
.
CMFCPropertyGridProperty::IsEnabled
Indica si una propiedad está habilitada o deshabilitada.
BOOL IsEnabled() const;
Valor devuelto
TRUE
si la propiedad está habilitada; FALSE
si la propiedad está deshabilitada.
Comentarios
Indica si una propiedad está habilitada o deshabilitada.
CMFCPropertyGridProperty::IsExpanded
Indica si una propiedad está expandida o contraída.
BOOL IsExpanded() const;
Valor devuelto
TRUE
si la propiedad está expandida; FALSE
si la propiedad está contraída.
CMFCPropertyGridProperty::IsGroup
Indica si la propiedad actual representa un grupo.
BOOL IsGroup() const;
Valor devuelto
TRUE
si el objeto de propiedad actual representa un grupo; FALSE
si la propiedad representa un valor.
Comentarios
Un grupo es una colección de propiedades relacionadas en un control de cuadrícula de propiedades. Si el control se muestra jerárquicamente, el nombre del grupo se muestra como un título de categoría en la fila situada encima del grupo.
CMFCPropertyGridProperty::IsInPlaceEditing
Indica si la propiedad actual es editable.
BOOL IsInPlaceEditing() const;
Valor devuelto
TRUE
si la propiedad actual es editable; en caso contrario, FALSE
.
CMFCPropertyGridProperty::IsModified
Indica si la propiedad actual se ha modificado.
BOOL IsModified() const;
Valor devuelto
TRUE
si se puede modificar la propiedad; en caso contrario, FALSE
.
CMFCPropertyGridProperty::IsParentExpanded
Indica si los elementos primarios de la propiedad actual se han expandido.
BOOL IsParentExpanded() const;
Valor devuelto
TRUE
si se expanden todos los elementos primarios de la propiedad actual; FALSE
si se contraen las propiedades primarias.
CMFCPropertyGridProperty::IsSelected
Indica si la propiedad actual se ha seleccionado.
virtual BOOL IsSelected() const;
Valor devuelto
TRUE
si se selecciona la propiedad actual; en caso contrario, FALSE
.
CMFCPropertyGridProperty::IsSubItem
Indica si la propiedad especificada es un subelemento de la propiedad actual.
BOOL IsSubItem(CMFCPropertyGridProperty* pProp) const;
Parámetros
pProp
[in] Puntero a una propiedad.
Valor devuelto
TRUE
si la propiedad especificada es un subelemento de la propiedad actual; de lo contrario, FALSE
.
CMFCPropertyGridProperty::IsValueChanged
Indica si el valor de la propiedad actual ha cambiado.
virtual BOOL IsValueChanged() const;
Valor devuelto
TRUE
si el valor de la propiedad actual ha cambiado; de lo contrario, FALSE
.
CMFCPropertyGridProperty::IsVisible
Indica si la propiedad actual está visible.
BOOL IsVisible() const;
Valor devuelto
TRUE
si la propiedad actual está visible; de lo contrario, FALSE
.
CMFCPropertyGridProperty::m_strFormatDouble
Contiene una cadena de formato para un valor de tipo double.
static CString m_strFormatDouble;
CMFCPropertyGridProperty::m_strFormatFloat
Contiene una cadena de formato para un valor de tipo float.
static CString m_strFormatFloat;
CMFCPropertyGridProperty::m_strFormatLong
Contiene una cadena de formato para un valor de tipo long.
static CString m_strFormatLong;
CMFCPropertyGridProperty::m_strFormatShort
Contiene una cadena de formato para un valor de tipo short.
static CString m_strFormatShort;
CMFCPropertyGridProperty::OnClickButton
Lo llama el marco cuando el usuario selecciona un botón que se encuentra en una propiedad.
virtual void OnClickButton(CPoint point);
Parámetros
point
[in] Un punto, en coordenadas de cliente.
Comentarios
De forma predeterminada, este método no hace nada.
CMFCPropertyGridProperty::OnClickName
El control de la lista de propiedades primaria llama este elemento cuando un usuario selecciona el campo de nombre de una propiedad.
virtual void OnClickName(CPoint C);
Parámetros
C
[in] Un punto, en coordenadas de cliente.
Comentarios
De forma predeterminada, este método no hace nada.
CMFCPropertyGridProperty::OnClickValue
El control de la lista de propiedades primaria llama este elemento cuando un usuario selecciona el campo de valor de una propiedad.
virtual BOOL OnClickValue(
UINT uiMsg,
CPoint point);
Parámetros
uiMsg
[in] Un mensaje del mouse.
point
[in] Un punto, en coordenadas de cliente.
Valor devuelto
TRUE
si este método procesa el mensaje del mouse especificado; de lo contrario, FALSE
.
Comentarios
De forma predeterminada, este método devuelve FALSE
si la propiedad actual no se puede editar. De lo contrario, el control de edición o número asociado a esta propiedad procesa el mensaje de mouse especificado y, a continuación, este método devuelve TRUE
.
CMFCPropertyGridProperty::OnCloseCombo
El marco de trabajo llama a este elemento cuando se cierra un cuadro combinado contenido en una propiedad.
virtual void OnCloseCombo();
CMFCPropertyGridProperty::OnCtlColor
El marco de trabajo llama a este elemento cuando debe recuperar un pincel para rellenar el color de fondo de una propiedad.
virtual HBRUSH OnCtlColor(
CDC* pDC,
UINT nCtlColor);
Parámetros
pDC
[in] Puntero a un contexto de dispositivo.
nCtlColor
[in] (Este parámetro no se usa.)
Valor devuelto
Manipulador de un pincel si este método es correcto; de lo contrario, NULL
.
CMFCPropertyGridProperty::OnDblClk
El marco de trabajo llama a este elemento cuando el usuario hace clic en una propiedad.
virtual BOOL OnDblClk(CPoint point);
Parámetros
point
[in] Un punto, en coordenadas de cliente.
Valor devuelto
TRUE
si este método es correcto; en caso contrario, FALSE
.
Comentarios
De forma predeterminada, este método selecciona el siguiente elemento de propiedad en el control de lista de propiedades.
CMFCPropertyGridProperty::OnDestroyWindow
El marco de trabajo llama a este elemento cuando se destruye una propiedad o cuando finaliza la edición.
virtual void OnDestroyWindow();
CMFCPropertyGridProperty::OnDrawButton
El marco de trabajo llama a este elemento para dibujar un botón que se encuentra en una propiedad.
virtual void OnDrawButton(
CDC* pDC,
CRect rectButton);
Parámetros
pDC
[in] Puntero a un contexto de dispositivo.
rectButton
[in] Rectángulo delimitador que especifica dónde dibujar un botón.
CMFCPropertyGridProperty::OnDrawDescription
El marco de trabajo llama a este elemento para dibujar la descripción de la propiedad.
virtual void OnDrawDescription(
CDC* pDC,
CRect rect);
Parámetros
pDC
[in] Puntero a un contexto de dispositivo.
rect
[in] Rectángulo delimitador que especifica dónde dibujar la descripción de la propiedad.
Comentarios
De forma predeterminada, este método dibuja el nombre y la descripción de la propiedad en la fuente que usa por el control de lista de propiedades primaria. La descripción de la propiedad se dibuja en estilo normal y el nombre de la propiedad se dibuja en negrita.
CMFCPropertyGridProperty::OnDrawExpandBox
Lo llama el marco para dibujar un control de cuadro de expansión cerca de una propiedad que contiene subpropiedades.
virtual void OnDrawExpandBox(
CDC* pDC,
CRect rectExpand);
Parámetros
pDC
[in] Puntero a un contexto de dispositivo.
rectExpand
[in] Rectángulo delimitador que especifica dónde dibujar el control del cuadro de expansión.
Comentarios
Seleccione el control de cuadro de expansión para expandir o contraer una lista de subpropiedades. El control del cuadro de expansión se designa mediante un cuadrado que contiene un signo más (+) o menos (-). Un signo más indica que la propiedad se puede expandir para mostrar una lista de subpropiedades. Un signo menos indica que la lista se puede contraer para mostrar solo la propiedad.
CMFCPropertyGridProperty::OnDrawName
El marco de trabajo llama a este elemento para mostrar el nombre de la propiedad.
virtual void OnDrawName(
CDC* pDC,
CRect rect);
Parámetros
pDC
[in] Puntero a un contexto de dispositivo.
rect
[in] Rectángulo delimitador que especifica dónde dibujar el nombre de la propiedad.
CMFCPropertyGridProperty::OnDrawValue
Lo llama el marco para mostrar el valor de la propiedad.
virtual void OnDrawValue(
CDC* pDC,
CRect rect);
Parámetros
pDC
[in] Puntero a un contexto de dispositivo.
rect
[in] Rectángulo delimitador que especifica dónde dibujar el valor de la propiedad.
CMFCPropertyGridProperty::OnEdit
Lo llama el marco cuando el usuario está a punto de modificar un valor de propiedad.
virtual BOOL OnEdit(LPPOINT lptClick);
Parámetros
lptClick
[in] (Este parámetro no se usa.) Puntero a un punto, en coordenadas de cliente.
Valor devuelto
TRUE
si la operación de edición se inicia correctamente; de lo contrario, FALSE
.
Comentarios
El marco de trabajo llama a esta función cuando el usuario está a punto de modificar un valor de propiedad. De forma predeterminada, este método inicia el editor adecuado para un control de cuadro combinado o un control de número.
CMFCPropertyGridProperty::OnEndEdit
El marco de trabajo llama a este elemento cuando el usuario ha terminado de modificar un valor de propiedad.
virtual BOOL OnEndEdit();
Valor devuelto
Este método devuelve siempre TRUE
.
Comentarios
De forma predeterminada, este método destruye el control de edición actual y, a continuación, devuelve TRUE
.
CMFCPropertyGridProperty::OnKillFocus
El marco de trabajo llama a este elemento cuando la propiedad pierde el foco de entrada.
virtual BOOL OnKillFocus(CWnd*);
Parámetros
CWnd
[in] (No se usa.) Puntero a una ventana.
Valor devuelto
Este método devuelve siempre TRUE
.
Comentarios
De forma predeterminada, este método no hace nada y, a continuación, devuelve TRUE
. Si invalida este método, devuelva TRUE
si el marco de trabajo puede finalizar la operación de edición cuando la propiedad pierde el foco de entrada.
CMFCPropertyGridProperty::OnKillSelection
virtual void OnKillSelection(CMFCPropertyGridProperty*);
Parámetros
[in] CMFCPropertyGridProperty*
\
Comentarios
De forma predeterminada, este método no hace nada.
CMFCPropertyGridProperty::OnPosSizeChanged
virtual void OnPosSizeChanged(CRect);
Parámetros
[in] CRect
\
Comentarios
De forma predeterminada, este método no hace nada.
CMFCPropertyGridProperty::OnRClickName
El marco de trabajo llama a este elemento cuando el usuario selecciona el botón derecho del mouse en el área de nombre de propiedad.
virtual void OnRClickName(CPoint C);
Parámetros
C
[in] Un punto, en coordenadas de cliente.
Comentarios
De forma predeterminada, este método no hace nada.
CMFCPropertyGridProperty::OnRClickValue
El marco de trabajo llama a este elemento cuando el usuario selecciona el botón derecho del mouse en el área de valor de propiedad.
virtual void OnRClickValue(
CPoint C,
BOOL B);
Parámetros
C
[in] Un punto, en coordenadas de cliente.
B
[in] Valor booleano.
Comentarios
De forma predeterminada, este método no hace nada y el parámetro B
no tiene ningún propósito predefinido.
CMFCPropertyGridProperty::OnSelectCombo
El marco de trabajo llama a este elemento cuando el usuario selecciona un elemento del cuadro combinado editable.
virtual void OnSelectCombo();
Comentarios
De forma predeterminada, este método usa el texto del elemento seleccionado para actualizar el valor de propiedad.
CMFCPropertyGridProperty::OnSetCursor
El marco de trabajo llama a este elemento cuando el puntero del mouse se mueve a un elemento de propiedad.
virtual BOOL OnSetCursor() const;
Valor devuelto
TRUE
si la propiedad actual es un tipo variant o una lista de valores y este método carga correctamente el cursor del mouse del punto de inserción (I-beam); de lo contrario, FALSE
.
Comentarios
Este método admite los siguientes tipos variant: VT_INT
, VT_I2
, VT_I4
, VT_UINT
VT_UI1
, VT_UI2
, VT_UI4
, VT_R4
, VT_R8
y VT_BSTR
.
CMFCPropertyGridProperty::OnSetSelection
virtual void OnSetSelection CMFCPropertyGridProperty*);
Parámetros
[in] CMFCPropertyGridProperty*
\
Comentarios
De forma predeterminada, este método no hace nada.
CMFCPropertyGridProperty::OnUpdateValue
Lo llama el marco cuando el valor de una propiedad editable ha cambiado.
virtual BOOL OnUpdateValue();
Valor devuelto
TRUE
si este método es correcto; en caso contrario, FALSE
.
CMFCPropertyGridProperty::PushChar
Este elemento se llama desde el control de lista de propiedades cuando se selecciona la propiedad y el usuario escribe un nuevo carácter.
virtual BOOL PushChar(UINT nChar);
Parámetros
nChar
[in] Un carácter.
Valor devuelto
TRUE
si la operación de edición continúa; de lo contrario, FALSE
.
Comentarios
Este método admite una propiedad que es una lista de valores o uno de los siguientes tipos variant: VT_INT
, VT_I2
, VT_I4
, VT_UINT
, VT_UI1
, VT_UI2
, VT_UI4
, VT_R4
, VT_R8
y VT_BSTR
.
CMFCPropertyGridProperty::Redraw
Vuelve a dibujar la propiedad.
void Redraw();
CMFCPropertyGridProperty::RemoveAllOptions
Quita todas las opciones (elementos) de una propiedad.
void RemoveAllOptions();
Comentarios
Las opciones también se conocen como elementos de lista de un control de lista de propiedades.
CMFCPropertyGridProperty::RemoveSubItem
Quita el subelemento especificado.
BOOL RemoveSubItem(
CMFCPropertyGridProperty*& pProp,
BOOL bDelete=TRUE);
Parámetros
pProp
[in] Puntero a un subelemento de propiedad.
bDelete
[in] TRUE
para eliminar el objeto de propiedad especificado por el parámetro pProp
; de lo contrario, FALSE
. El valor predeterminado es TRUE
.
Valor devuelto
Comentarios
Especifique FALSE
para el bDelete
parámetro si piensa mover el subelemento especificado; es decir, quite el subelemento y, a continuación, agréguelo en otro lugar.
CMFCPropertyGridProperty::ResetOriginalValue
Restaura el valor original de una propiedad editable.
virtual void ResetOriginalValue();
CMFCPropertyGridProperty::SetData
Asocia un valor DWORD
a una propiedad.
void SetData(DWORD_PTR dwData);
Parámetros
dwData
[in] Valor de 32 bits específico de la aplicación, como un entero o un puntero a otros datos.
Comentarios
Use el método CMFCPropertyGridProperty::GetData
para recuperar el valor DWORD
. Use el método CMFCPropertyGridCtrl::FindItemByData
para buscar el elemento de lista de propiedades asociado al valor DWORD
especificado.
CMFCPropertyGridProperty::SetDescription
Especifica el texto que describe la propiedad actual.
void SetDescription(const CString& strDescr);
Parámetros
strDescr
[in] Texto que describe la propiedad actual.
CMFCPropertyGridProperty::SetName
Establece el nombre de una propiedad.
void SetName(
LPCTSTR lpszName,
BOOL bRedraw=TRUE);
Parámetros
lpszName
[in] Nombre de la propiedad.
bRedraw
[in] TRUE
para volver a dibujar la propiedad inmediatamente; de lo contrario, FALSE
. El valor predeterminado es TRUE
.
CMFCPropertyGridProperty::SetOriginalValue
Establece el valor original de una propiedad editable.
virtual void SetOriginalValue(const COleVariant& varValue);
Parámetros
varValue
[in] Un valor.
Comentarios
Use el método CMFCPropertyGridProperty::ResetOriginalValue
para restablecer el valor original de una propiedad editada.
CMFCPropertyGridProperty::SetValue
Establece el valor de una propiedad de cuadrícula de propiedades.
virtual void SetValue(const _variant_t& varValue);
Parámetros
varValue
[in] Referencia al valor en el que se va a establecer la propiedad.
Ejemplo: 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
Muestra u oculta una propiedad.
void Show(
BOOL bShow=TRUE,
BOOL bAdjustLayout=TRUE);
Parámetros
bShow
[in] TRUE
para mostrar la propiedad actual y sus subelementos; FALSE
para ocultar la propiedad actual y sus subelementos. El valor predeterminado es TRUE
.
bAdjustLayout
[in] TRUE
para recalcular cómo dibujar la etiqueta y el valor de una propiedad y, a continuación, dibujar la propiedad; FALSE
para usar cálculos existentes para dibujar la propiedad. El valor predeterminado es TRUE
.