Clase COlePropertyPage
Se utiliza para mostrar las propiedades de un control personalizado en una interfaz gráfica, similar a un cuadro de diálogo.
Sintaxis
class AFX_NOVTABLE COlePropertyPage : public CDialog
Miembros
Constructores públicos
Nombre | Descripción |
---|---|
COlePropertyPage::COlePropertyPage | Construye un objeto COlePropertyPage . |
Métodos públicos
Nombre | Descripción |
---|---|
COlePropertyPage::GetControlStatus | Indica si el usuario ha modificado el valor en el control. |
COlePropertyPage::GetObjectArray | Devuelve la matriz de objetos que están siendo editados por la página de propiedades. |
COlePropertyPage::GetPageSite | Devuelve un puntero a la interfaz de IPropertyPageSite de la página de propiedades. |
COlePropertyPage::IgnoreApply | Determina qué controles no habilitan el botón Aplicar. |
COlePropertyPage::IsModified | Indica si el usuario ha modificado la página de propiedades. |
COlePropertyPage::OnEditProperty | El marco llama a este elemento cuando el usuario edita una propiedad. |
COlePropertyPage::OnHelp | El marco la llama cuando el usuario pide ayuda. |
COlePropertyPage::OnInitDialog | El marco la llama cuando se ha inicializado la página de propiedades. |
COlePropertyPage::OnObjectsChanged | El marco la llama cuando se elige otro control OLE con nuevas propiedades. |
COlePropertyPage::OnSetPageSite | El marco la llama cuando el marco de propiedades proporciona el sitio de la página. |
COlePropertyPage::SetControlStatus | Establece una marca que indica si el usuario ha modificado el valor en el control. |
COlePropertyPage::SetDialogResource | Establece el recurso de diálogo de la página de propiedades. |
COlePropertyPage::SetHelpInfo | Establece el breve texto de ayuda de la página de propiedades, el nombre de su archivo de ayuda y su contexto de ayuda. |
COlePropertyPage::SetModifiedFlag | Establece una marca que indica si el usuario ha modificado la página de propiedades. |
COlePropertyPage::SetPageName | Establece el nombre (título) de la página de propiedades. |
Comentarios
Por ejemplo, una página de propiedades puede incluir un control de edición que permita al usuario ver y modificar la propiedad título del control.
Cada propiedad de control de existencias o personalizada puede tener un control de diálogo que permita al usuario del control ver el valor de propiedad actual y modificar ese valor si es necesario.
Para obtener más información sobre el uso de COlePropertyPage
, consulte el artículo Controles de ActiveX: páginas de propiedades.
Jerarquía de herencia
COlePropertyPage
Requisitos
Encabezado: afxctl.h
COlePropertyPage::COlePropertyPage
Construye un objeto COlePropertyPage
.
COlePropertyPage(
UINT idDlg,
UINT idCaption);
Parámetros
idDlg
Id. de recurso de la plantilla de diálogo.
idCaption
Id. de recurso del título de la página de propiedades.
Comentarios
Al implementar una subclase de COlePropertyPage
, el constructor de la subclase debe usar el constructor COlePropertyPage
para identificar el recurso de plantilla de diálogo en el que se basa la página de propiedades y el recurso de cadena que contiene su título.
COlePropertyPage::GetControlStatus
Determina si el usuario ha modificado el valor del control de la página de propiedades con el id. de recurso especificado.
BOOL GetControlStatus(UINT nID);
Parámetros
Nid
Id. de recurso de un control de la página de propiedades.
Valor devuelto
TRUE si se ha modificado el valor del control; en caso contrario, FALSE.
COlePropertyPage::GetObjectArray
Devuelve la matriz de objetos que están siendo editados por la página de propiedades.
LPDISPATCH* GetObjectArray(ULONG* pnObjects);
Parámetros
pnObjects
Puntero a un entero largo sin signo que recibirá el número de objetos que edita la página.
Valor devuelto
Puntero a una matriz de punteros de IDispatch
, que se usan para tener acceso a las propiedades de cada control de la página de propiedades. El autor de la llamada no debe liberar estos punteros de interfaz.
Comentarios
Cada objeto de la página de propiedades mantiene una matriz de punteros a las interfaces de IDispatch
de los objetos que edita la página. Esta función establece su argumento pnObjects en el número de elementos de esa matriz y devuelve un puntero al primer elemento de la matriz.
COlePropertyPage::GetPageSite
Obtiene un puntero a la interfaz de IPropertyPageSite
de la página de propiedades.
LPPROPERTYPAGESITE GetPageSite();
Valor devuelto
Un puntero a la interfaz de IPropertyPageSite
de la página de propiedades.
Comentarios
Los controles y contenedores cooperan para que los usuarios puedan examinar y editar las propiedades de control. El control proporciona páginas de propiedades, cada una de las cuales es un objeto OLE que permite al usuario editar un conjunto relacionado de propiedades. El contenedor proporciona un marco de propiedad que muestra las páginas de propiedades. Para cada página, el marco de propiedad proporciona un sitio de página, que admite la interfaz de IPropertyPageSite
.
COlePropertyPage::IgnoreApply
Determina qué controles no habilitan el botón Aplicar.
void IgnoreApply(UINT nID);
Parámetros
Nid
Id. del control que se ignorará.
Comentarios
El botón Aplicar de la página de propiedades solo está habilitado cuando se han cambiado los valores de los controles de la página de propiedades. Use esta función para especificar controles que no ocasionan que el botón Aplicar se habilite cuando cambien sus valores.
COlePropertyPage::IsModified
Determina si el usuario ha cambiado algún valor de la página de propiedades.
BOOL IsModified();
Valor devuelto
TRUE si se ha modificado la página de propiedades.
COlePropertyPage::OnEditProperty
El marco llama a esta función cuando se va a editar una propiedad específica.
virtual BOOL OnEditProperty(DISPID dispid);
Parámetros
dispid
Id. de envío de la propiedad que se está editando.
Valor devuelto
La implementación predeterminada devuelve FALSE. Las invalidaciones de esta función deben devolver TRUE.
Comentarios
Puede invalidarlo para establecer el foco en el control adecuado de la página. La implementación predeterminada no hace nada y devuelve FALSE.
COlePropertyPage::OnHelp
El marco llama a esta función cuando el usuario solicita ayuda en línea.
virtual BOOL OnHelp(LPCTSTR lpszHelpDir);
Parámetros
lpszHelpDir
Directorio que contiene el archivo de ayuda de la página de propiedades.
Valor devuelto
La implementación predeterminada devuelve FALSE.
Comentarios
Invalide si la página de propiedades debe realizar alguna acción especial cuando el usuario accede a la ayuda. La implementación predeterminada no hace nada y devuelve FALSE, lo que indica al marco que llame a WinHelp.
COlePropertyPage::OnInitDialog
El marco llama a esta función cuando se inicializa el diálogo de la página de propiedades.
virtual BOOL OnInitDialog();
Valor devuelto
La implementación predeterminada devuelve FALSE.
Comentarios
Invalide si se requiere alguna acción especial cuando se inicializa el diálogo. La implementación predeterminada llama a CDialog::OnInitDialog
devuelve FALSE.
COlePropertyPage::OnObjectsChanged
El marco la llama cuando se elige otro control OLE con nuevas propiedades.
virtual void OnObjectsChanged();
Comentarios
Al ver las propiedades de un control de OLE en el entorno del desarrollador, se usa un cuadro de diálogo sin modo para mostrar sus páginas de propiedades. Si se selecciona otro control, se debe mostrar un conjunto diferente de páginas de propiedades para el nuevo conjunto de propiedades. El marco llama a esta función para notificar a la página de propiedades del cambio.
Invalide esta función para recibir la notificación de esta acción y realizar alguna acción especial.
COlePropertyPage::OnSetPageSite
El marco llama a esta función cuando el marco de propiedad proporciona el sitio de la página de propiedades.
virtual void OnSetPageSite();
Comentarios
La implementación predeterminada carga el título de la página e intenta determinar el tamaño de la página del recurso de diálogo. Invalide esta función si la página de propiedades requiere alguna acción adicional; la invalidación debe llamar a la implementación de la clase base.
COlePropertyPage::SetControlStatus
Cambia el estado de un control de la página de propiedades.
BOOL SetControlStatus(
UINT nID,
BOOL bDirty);
Parámetros
Nid
Contiene la Id. de un control de la página de propiedades.
bDirty
Especifica si se ha modificado un campo de la página de propiedades. Se establece en TRUE si el campo se ha modificado, en FALSE si no se ha modificado.
Valor devuelto
TRUE, si se estableció el control especificado; en caso contrario, FALSE.
Comentarios
Si el estado de un control de la página de propiedades está sucio cuando se cierra la página de propiedades o se elige el botón Aplicar, la propiedad del control se actualizará con el valor adecuado.
COlePropertyPage::SetDialogResource
Establece el recurso de diálogo de la página de propiedades.
void SetDialogResource(HGLOBAL hDialog);
Parámetros
hDialog
Establece el recurso de diálogo de la página de propiedades.
COlePropertyPage::SetHelpInfo
Especifica información sobre herramientas, el nombre de archivo de ayuda y el contexto de ayuda de la página de propiedades.
void SetHelpInfo(
LPCTSTR lpszDocString,
LPCTSTR lpszHelpFile = NULL,
DWORD dwHelpContext = 0);
Parámetros
lpszDocString
Cadena que contiene información breve de ayuda que se mostrará en una barra de estado u otra ubicación.
lpszHelpFile
Nombre del archivo de ayuda de la página de propiedades.
dwHelpContext
Contexto de ayuda para la página de propiedades.
COlePropertyPage::SetModifiedFlag
Indica si el usuario ha modificado la página de propiedades.
void SetModifiedFlag(BOOL bModified = TRUE);
Parámetros
bModified
Especifica el nuevo valor de la marca modificada de la página de propiedades.
COlePropertyPage::SetPageName
Establece el nombre de la página de propiedades, que normalmente se mostrará en la pestaña de la página.
void SetPageName(LPCTSTR lpszPageName);
Parámetros
lpszPageName
Puntero que apunta a una cadena que contiene el nombre de la página de propiedades.
Consulte también
Muestra MFC CIRC3
Muestra de MFC TESTHELP
CDialog (clase)
Gráfico de jerarquías
CDialog (clase)