Estructura PROPSHEETPAGE

Define una página en una hoja de propiedades.

Sintaxis

typedef struct {
    DWORD      dwSize;
    DWORD      dwFlags;
    HINSTANCE  hInstance;
    union {
        LPCSTR                 pszTemplate;
        PROPSHEETPAGE_RESOURCE pResource;
    };
    union {
        HICON  hIcon;
        LPCSTR pszIcon;
    };
    LPCSTR          pszTitle;
    DLGPROC         pfnDlgProc;
    LPARAM          lParam;
    LPFNPSPCALLBACK pfnCallback;
    UINT            *pcRefParent;
    LPCTSTR         pszHeaderTitle;
    LPCTSTR         pszHeaderSubTitle;
    HANDLE          hActCtx;
    union 
    {
        HBITMAP     hbmHeader;
        LPCSTR      pszbmHeader;
    }
} PROPSHEETPAGE, *LPPROPSHEETPAGE;

Miembros

dwSize

Tipo: DWORD

Tamaño, en bytes, de esta estructura.

dwFlags

Tipo: DWORD

Marcas que indican qué opciones se van a usar cuando se cree la página de la hoja de propiedades. Este miembro puede ser una combinación de los valores siguientes.

Value Significado
PSP_DEFAULT Usa el significado predeterminado para todos los miembros de la estructura. Esta marca no se admite cuando se usa el Asistente de estilo Aero (PSH_AEROWIZARD).
PSP_DLGINDIRECT Crea la página a partir de la plantilla del cuadro de diálogo en la memoria a la que apunta el miembro pResource . La función PropertySheet supone que la plantilla que está en memoria no está protegida por escritura. Una plantilla de solo lectura provocará una excepción en algunas versiones de Windows.
PSP_HASHELP Habilita el botón Ayuda de la hoja de propiedades cuando la página está activa. Esta marca no se admite cuando se usa el Asistente de estilo Aero (PSH_AEROWIZARD).
PSP_HIDEHEADER Versión 5.80 y posteriores. Hace que la hoja de propiedades del asistente oculte el área de encabezado cuando se selecciona la página. Si se ha proporcionado una marca de agua, se pintará en el lado izquierdo de la página. Esta marca debe establecerse para las páginas de bienvenida y finalización y omitirse para las páginas interiores. Esta marca no se admite cuando se usa el Asistente de estilo Aero (PSH_AEROWIZARD).
PSP_PREMATURE Versión 4.71 o posterior. Hace que la página se cree cuando se crea la hoja de propiedades. Si no se especifica esta marca, la página no se creará hasta que se seleccione la primera vez. Esta marca no se admite cuando se usa el Asistente de estilo Aero (PSH_AEROWIZARD).
PSP_RTLREADING Invierte la dirección en la que se muestra pszTitle . Las ventanas normales muestran todo el texto, incluido pszTitle, de izquierda a derecha (LTR). En el caso de idiomas como hebreo o árabe que leen de derecha a izquierda (RTL), se puede reflejar una ventana y se mostrará todo el texto RTL. Si se establece PSP_RTLREADING, pszTitle leerá RTL en una ventana primaria normal y LTR en una ventana primaria reflejada.
PSP_USECALLBACK Llama a la función especificada por el miembro pfnCallback al crear o destruir la página de hoja de propiedades definida por esta estructura.
PSP_USEFUSIONCONTEXT Versión 6.0 y posteriores. Use un contexto de activación. Para usar un contexto de activación, debe establecer esta marca y asignar el identificador de contexto de activación a hActCtx. Vea los comentarios.
PSP_USEHEADERSUBTITLE Versión 5.80 o posterior. Muestra la cadena a la que apunta el miembro pszHeaderSubTitle como subtítulo del área de encabezado de una página Wizard97. Para usar esta marca, también debe establecer la marca PSH_WIZARD97 en el miembro dwFlags de la estructura PROPSHEETHEADER asociada. La marca PSP_USEHEADERSUBTITLE se omite si se establece PSP_HIDEHEADER. En asistentes de estilo Aero, el título aparece cerca de la parte superior del área de cliente.
PSP_USEHEADERTITLE Versión 5.80 o posterior. Muestra la cadena a la que apunta el miembro pszHeaderTitle como título en el encabezado de una página interior wizard97. También debe establecer la marca PSH_WIZARD97 en el miembro dwFlags de la estructura PROPSHEETHEADER asociada. La marca PSP_USEHEADERTITLE se omite si se establece PSP_HIDEHEADER. Esta marca no se admite cuando se usa el Asistente de estilo Aero (PSH_AEROWIZARD).
PSP_USEHICON Usa hIcon como icono pequeño en la pestaña de la página. Esta marca no se admite cuando se usa el Asistente de estilo Aero (PSH_AEROWIZARD).
PSP_USEICONID Usa pszIcon como nombre del recurso de icono para cargar y usar como icono pequeño en la pestaña de la página. Esta marca no se admite cuando se usa el Asistente de estilo Aero (PSH_AEROWIZARD).
PSP_USEREFPARENT Mantiene el recuento de referencias especificado por el miembro pcRefParent durante la vigencia de la página de hoja de propiedades creada a partir de esta estructura.
PSP_USETITLE Usa el miembro pszTitle como título del cuadro de diálogo de hoja de propiedades en lugar del título almacenado en la plantilla del cuadro de diálogo. Esta marca no se admite cuando se usa el Asistente de estilo Aero (PSH_AEROWIZARD).

hInstance

Tipo: HINSTANCE

Controle a la instancia desde la que se va a cargar un icono o un recurso de cadena. Si el miembro pszIcon, pszTitle, pszHeaderTitle o pszHeaderSubTitle identifica un recurso que se va a cargar, se debe especificar hInstance .

pszTemplate

Tipo: LPCSTR

Plantilla de cuadro de diálogo que se va a usar para crear la página. Este miembro puede especificar el identificador de recurso de la plantilla o la dirección de una cadena que especifica el nombre de la plantilla. Si se establece la marca PSP_DLGINDIRECT en el miembro dwFlags , se omite pszTemplate . Este miembro se declara como una unión con pResource.

pResource

Tipo: LPCDLGTEMPLATE

Puntero a una plantilla de cuadro de diálogo en memoria. La función PropertySheet supone que la plantilla no está protegida por escritura. Una plantilla de solo lectura provocará una excepción en algunas versiones de Windows. Para usar este miembro, debe establecer la marca PSP_DLGINDIRECT en el miembro dwFlags . Este miembro se declara como una unión con pszTemplate.

hIcon

Tipo: HICON

Identificador del icono que se va a usar como icono en la pestaña de la página. Si el miembro dwFlags no incluye PSP_USEHICON, este miembro se omite. Este miembro se declara como una unión con pszIcon.

pszIcon

Tipo: LPCSTR

Recurso de icono que se va a usar como icono en la pestaña de la página. Este miembro puede especificar el identificador del recurso de icono o la dirección de la cadena que especifica el nombre del recurso de icono. Para usar este miembro, debe establecer la marca PSP_USEICONID en el miembro dwFlags . Este miembro se declara como una unión con hIcon.

pszTitle

Tipo: LPCSTR

Título del cuadro de diálogo de la hoja de propiedades. Este título invalida el título especificado en la plantilla del cuadro de diálogo. Este miembro puede especificar el identificador de un recurso de cadena o la dirección de una cadena que especifica el título. Para usar este miembro, debe establecer la marca PSP_USETITLE en el miembro dwFlags .

pfnDlgProc

Tipo: DLGPROC

Puntero al procedimiento del cuadro de diálogo de la página. Dado que las páginas se crean como cuadros de diálogo modeless, el procedimiento del cuadro de diálogo no debe llamar a la función EndDialog .

lParam

Tipo: LPARAM

Cuando se crea la página, se pasa una copia de la estructura PROPSHEETPAGE de la página al procedimiento del cuadro de diálogo con un mensaje de WM_INITDIALOG . Se proporciona el miembro lParam para que pueda pasar información específica de la aplicación al procedimiento del cuadro de diálogo. No afecta a la propia página.

pfnCallback

Tipo: LPFNPSPCALLBACK

Puntero a una función de devolución de llamada definida por la aplicación a la que se llama cuando se crea la página y cuando está a punto de destruirse. Para obtener más información sobre la función de devolución de llamada, vea Función de devolución de llamada LPFNPSPCALLBACKA. Para usar este miembro, debe establecer la marca PSP_USECALLBACK en el miembro dwFlags .

pcRefParent

Tipo: UINT*

Puntero al valor de recuento de referencias. Para usar este miembro, debe establecer la marca PSP_USEREFPARENT en el miembro dwFlags .

Nota

Cuando se crea una página de hoja de propiedades, se incrementa el valor al que apunta pcRefParent . Para crear una página de hoja de propiedades de forma implícita, establezca la marca PSH_PROPSHEETPAGE en el miembro dwFlags de PROPSHEETHEADER y llame a la función PropertySheet . Puede hacerlo explícitamente mediante la función CreatePropertySheetPage . Cuando se destruye una página de hoja de propiedades, se disminuye el valor al que apunta el miembro pcRefParent . Esto tiene lugar automáticamente cuando se destruye la hoja de propiedades. Puede destruir explícitamente una página de hoja de propiedades mediante la función DestroyPropertySheetPage .

pszHeaderTitle

Tipo: LPCTSTR

Versión 5.80 o posterior. Título del área de encabezado. Para usar este miembro en el Asistente de estilo Wizard97, también debe hacer lo siguiente:

  • Establezca la marca PSP_USEHEADERTITLE en el miembro dwFlags .
  • Establezca la marca PSH_WIZARD97 en el miembro dwFlags de la estructura PROPSHEETHEADER de la página.
  • Asegúrese de que no esté establecida la marca PSP_HIDEHEADER en el miembro dwFlags .

pszHeaderSubTitle

Tipo: LPCTSTR

Versión 5.80 o posterior. Subtítulo del área de encabezado. Para usar este miembro, debe hacer lo siguiente:

  • Establezca la marca PSP_USEHEADERSUBTITLE en el miembro dwFlags .
  • Establezca la marca PSH_WIZARD97 en el miembro dwFlags de la estructura PROPSHEETHEADER de la página.
  • Asegúrese de que no esté establecida la marca PSP_HIDEHEADER en el miembro dwFlags .

Nota

Este miembro se omite al usar el asistente de estilo Aero (PSH_AEROWIZARD)

hActCtx

Tipo: HANDLE

Versión 6.0 o posterior. Identificador de contexto de activación. Establezca este miembro en el identificador que se devuelve al crear el contexto de activación con CreateActCtx. El sistema activará este contexto antes de crear el cuadro de diálogo. No es necesario usar este miembro si usa un manifiesto global.

hbmHeader

Tipo: HBITMAP

Este miembro se declara como unión con pszbmHeader.

pszbmHeader

Tipo: LPCSTR

Este miembro se declara como unión con hbmHeader.

Comentarios

Comctl32.dll versión 6 y posteriores no se pueden redistribuir. Para usar Comctl32.dll versión 6 o posterior, especifique el archivo .dll en un manifiesto. Para obtener más información sobre los manifiestos, consulte Habilitación de estilos visuales.

Requisitos

Requisito Value
Cliente mínimo compatible Windows Vista [solo aplicaciones de escritorio]
Servidor mínimo compatible Windows Server 2003 [solo aplicaciones de escritorio]
Encabezado Prsht.h
Nombres Unicode y ANSI PROPSHEETHEADERW (Unicode) y PROPSHEETHEADERA (ANSI)