Estructura CHOOSEFONTA (commdlg.h)

Contiene información que la función ChooseFont usa para inicializar el cuadro de diálogo Fuente . Una vez que el usuario cierra el cuadro de diálogo, el sistema devuelve información sobre la selección del usuario en esta estructura.

Sintaxis

typedef struct tagCHOOSEFONTA {
  DWORD        lStructSize;
  HWND         hwndOwner;
  HDC          hDC;
  LPLOGFONTA   lpLogFont;
  INT          iPointSize;
  DWORD        Flags;
  COLORREF     rgbColors;
  LPARAM       lCustData;
  LPCFHOOKPROC lpfnHook;
  LPCSTR       lpTemplateName;
  HINSTANCE    hInstance;
  LPSTR        lpszStyle;
  WORD         nFontType;
  WORD         ___MISSING_ALIGNMENT__;
  INT          nSizeMin;
  INT          nSizeMax;
} CHOOSEFONTA;

Miembros

lStructSize

Tipo: DWORD

Longitud de la estructura, en bytes.

hwndOwner

Tipo: HWND

Identificador de la ventana que posee el cuadro de diálogo. Este miembro puede ser cualquier identificador de ventana válido o puede ser NULL si el cuadro de diálogo no tiene propietario.

hDC

Tipo: HDC

La función ChooseFont omite este miembro.

Windows Vista y Windows XP/2000: Identificador del contexto del dispositivo o contexto de información de la impresora cuyas fuentes se mostrarán en el cuadro de diálogo. Este miembro solo se usa si el miembro Flags especifica la marca CF_PRINTERFONTS o CF_BOTH ; de lo contrario, se omite este miembro.

lpLogFont

Tipo: LPLOGFONT

Puntero a una estructura LOGFONT . Si establece la marca de CF_INITTOLOGFONTSTRUCT en el miembro Flags e inicializa los demás miembros, la función ChooseFont inicializa el cuadro de diálogo con una fuente que coincida con los miembros LOGFONT . Si el usuario hace clic en el botón Aceptar , ChooseFont establece los miembros de la estructura LOGFONT en función de las selecciones del usuario.

iPointSize

Tipo: INT

Tamaño de la fuente seleccionada, en unidades de 1/10 de un punto. La función ChooseFont establece este valor después de que el usuario cierre el cuadro de diálogo.

Flags

Tipo: DWORD

Un conjunto de marcas de bits que puede usar para inicializar el cuadro de diálogo Fuente . Cuando se devuelve el cuadro de diálogo, establece estas marcas para indicar la entrada del usuario. Este miembro puede ser uno o varios de los valores siguientes.

Valor Significado
CF_APPLY
0x00000200L
Hace que el cuadro de diálogo muestre el botón Aplicar . Debe proporcionar un procedimiento de enlace para procesar WM_COMMAND mensajes para el botón Aplicar . El procedimiento de enlace puede enviar el mensaje WM_CHOOSEFONT_GETLOGFONT al cuadro de diálogo para recuperar la dirección de la estructura que contiene las selecciones actuales de la fuente.
CF_ANSIONLY
0x00000400L
Este marcador está obsoleto. Para limitar las selecciones de fuente a todos los scripts excepto aquellos que usan los juegos de caracteres OEM o Symbol, use CF_SCRIPTSONLY. Para obtener el comportamiento del CF_ANSIONLY original, use CF_SELECTSCRIPT y especifique ANSI_CHARSET en el miembro lfCharSet de la estructura LOGFONT a la que apunta lpLogFont.
CF_BOTH
0x00000003
Esta marca se omite para la enumeración de fuentes.

Windows Vista y Windows XP/2000: Hace que el cuadro de diálogo muestre las fuentes de pantalla y impresora disponibles. El miembro hDC es un identificador para el contexto del dispositivo o el contexto de información asociado a la impresora. Esta marca es una combinación de las marcas CF_SCREENFONTS y CF_PRINTERFONTS .

CF_EFFECTS
0x00000100L
Hace que el cuadro de diálogo muestre los controles que permiten al usuario especificar opciones de color de texto, subrayado y tachado. Si se establece esta marca, puede usar el miembro rgbColors para especificar el color de texto inicial. Puede usar los miembros lfStrikeOut y lfUnderline de la estructura a la que apunta lpLogFont para especificar la configuración inicial de las casillas de resaltado y subrayado. ChooseFont puede usar estos miembros para devolver las selecciones del usuario.
CF_ENABLEHOOK
0x00000008L
Habilita el procedimiento de enlace especificado en el miembro lpfnHook de esta estructura.
CF_ENABLETEMPLATE
0x00000010L
Indica que los miembros hInstance y lpTemplateName especifican una plantilla de cuadro de diálogo que se va a usar en lugar de la plantilla predeterminada.
CF_ENABLETEMPLATEHANDLE
0x00000020L
Indica que el miembro hInstance identifica un bloque de datos que contiene una plantilla de cuadro de diálogo precargada. El sistema omite el miembro lpTemplateName si se especifica esta marca.
CF_FIXEDPITCHONLY
0x00004000L

ChooseFont debe enumerar y permitir la selección de solo fuentes de tono fijo.

CF_FORCEFONTEXIST
0x00010000L

ChooseFont debe indicar una condición de error si el usuario intenta seleccionar una fuente o un estilo que no aparece en el cuadro de diálogo.

CF_INACTIVEFONTS
0x020000000L

ChooseFont también debe mostrar las fuentes que se establecen en Ocultar en fuentes Panel de control.

Windows Vista y Windows XP/2000: Esta marca no se admite hasta Windows 7.

CF_INITTOLOGFONTSTRUCT
0x00000040L

ChooseFont debe usar la estructura a la que apunta el miembro lpLogFont para inicializar los controles del cuadro de diálogo.

CF_LIMITSIZE
0x00002000L

ChooseFont debe seleccionar solo los tamaños de fuente dentro del intervalo especificado por los miembros nSizeMin y nSizeMax .

CF_NOOEMFONTS
0x00000800L
Igual que la marca de CF_NOVECTORFONTS .
CF_NOFACESEL
0x00080000L
Al usar una estructura LOGFONT para inicializar los controles del cuadro de diálogo, use esta marca para evitar que el cuadro de diálogo muestre una selección inicial para el cuadro combinado nombre de fuente. Esto resulta útil cuando no hay ningún nombre de fuente único que se aplique a la selección de texto.
CF_NOSCRIPTSEL
0x00800000L
Deshabilita el cuadro combinado Script . Cuando se establece esta marca, el miembro lfCharSet de la estructura LOGFONT se establece en DEFAULT_CHARSET cuando ChooseFont devuelve. Esta marca solo se usa para inicializar el cuadro de diálogo.
CF_NOSIMULATIONS
0x00001000L

ChooseFont no debe mostrar ni permitir la selección de simulaciones de fuentes.

CF_NOSIZESEL
0x00200000L
Al usar una estructura para inicializar los controles del cuadro de diálogo, use esta marca para evitar que el cuadro de diálogo muestre una selección inicial para el cuadro combinado Tamaño de fuente. Esto resulta útil cuando no hay ningún tamaño de fuente único que se aplique a la selección de texto.
CF_NOSTYLESEL
0x00100000L
Al usar una estructura LOGFONT para inicializar los controles del cuadro de diálogo, use esta marca para evitar que el cuadro de diálogo muestre una selección inicial para el cuadro combinado Estilo de fuente. Esto resulta útil cuando no hay ningún estilo de fuente único que se aplique a la selección de texto.
CF_NOVECTORFONTS
0x00000800L

ChooseFont no debe permitir selecciones de fuentes vectoriales.

CF_NOVERTFONTS
0x01000000L
Hace que el cuadro de diálogo Fuente muestre solo fuentes orientadas horizontalmente.
CF_PRINTERFONTS
0x00000002
Esta marca se omite para la enumeración de fuentes.

Windows Vista y Windows XP/2000: Hace que el cuadro de diálogo muestre solo las fuentes compatibles con la impresora asociada al contexto del dispositivo o al contexto de información identificado por el miembro hDC . También hace que la etiqueta de descripción del tipo de fuente aparezca en la parte inferior del cuadro de diálogo Fuente .

CF_SCALABLEONLY
0x00020000L
Especifica que ChooseFont solo debe permitir la selección de fuentes escalables. Las fuentes escalables incluyen fuentes vectoriales, fuentes de impresora escalables, fuentes TrueType y fuentes escaladas por otras tecnologías.
CF_SCREENFONTS
0x00000001
Esta marca se omite para la enumeración de fuentes.

Windows Vista y Windows XP/2000: Hace que el cuadro de diálogo muestre solo las fuentes de pantalla compatibles con el sistema.

CF_SCRIPTSONLY
0x00000400L

ChooseFont debe permitir la selección de fuentes para todos los juegos de caracteres no OEM y Symbol, así como el juego de caracteres ANSI. Esto sustituye al valor de CF_ANSIONLY .

CF_SELECTSCRIPT
0x00400000L
Cuando se especifica en la entrada, solo se muestran las fuentes con el juego de caracteres identificado en el miembro lfCharSet de la estructura LOGFONT . El usuario no podrá cambiar el juego de caracteres especificado en el cuadro combinado Scripts .
CF_SHOWHELP
0x00000004L
Hace que el cuadro de diálogo muestre el botón Ayuda . El miembro hwndOwner debe especificar la ventana para recibir los mensajes registrados HELPMSGSTRING que envía el cuadro de diálogo cuando el usuario hace clic en el botón Ayuda .
CF_TTONLY
0x00040000L

ChooseFont solo debe enumerar y permitir la selección de fuentes TrueType.

CF_USESTYLE
0x00000080L
El miembro lpszStyle es un puntero a un búfer que contiene datos de estilo que ChooseFont deben usar para inicializar el cuadro combinado Estilo de fuente. Cuando el usuario cierra el cuadro de diálogo, ChooseFont copia los datos de estilo de la selección del usuario en este búfer.
Nota Para globalizar la aplicación, debe especificar el estilo mediante los miembros lfWeight y lfItalic de la estructura LOGFONT a la que apunta lpLogFont. El nombre del estilo puede cambiar en función del idioma de la interfaz de usuario del sistema.
 
CF_WYSIWYG
0x00008000L
Obsoleto. ChooseFont omite esta marca.

Windows Vista y Windows XP/2000: ChooseFont solo debe permitir la selección de fuentes disponibles tanto en la impresora como en la pantalla. Si se especifica esta marca, también se deben especificar las marcas CF_SCREENSHOTS y CF_PRINTERFONTS o CF_BOTH .

rgbColors

Tipo: COLORREF

Si se establece la marca CF_EFFECTS , rgbColors especifica el color de texto inicial. Cuando ChooseFont vuelve correctamente, este miembro contiene el valor RGB del color de texto seleccionado por el usuario. Para crear un valor de color COLORREF , use la macro RGB .

lCustData

Tipo: LPARAM

Datos definidos por la aplicación que el sistema pasa al procedimiento de enlace identificado por el miembro lpfnHook . Cuando el sistema envía el mensaje WM_INITDIALOG al procedimiento de enlace, el parámetro lParam del mensaje es un puntero a la estructura CHOOSEFONT especificada cuando se creó el cuadro de diálogo. El procedimiento de enlace puede usar este puntero para obtener el valor lCustData .

lpfnHook

Tipo: LPCFHOOKPROC

Puntero a un procedimiento de enlace CFHookProc que puede procesar mensajes destinados al cuadro de diálogo. Este miembro se omite a menos que la marca de CF_ENABLEHOOK esté establecida en el miembro Flags .

lpTemplateName

Tipo: LPCTSTR

Nombre del recurso de plantilla del cuadro de diálogo en el módulo identificado por el miembro hInstance . Esta plantilla se sustituye por la plantilla de cuadro de diálogo estándar. Para los recursos de cuadro de diálogo numerados, lpTemplateName puede ser un valor devuelto por la macro MAKEINTRESOURCE . Este miembro se omite a menos que la marca de CF_ENABLETEMPLATE esté establecida en el miembro Flags .

hInstance

Tipo: HINSTANCE

Si la marca CF_ENABLETEMPLATEHANDLE se establece en el miembro Flags , hInstance es un identificador de un objeto de memoria que contiene una plantilla de cuadro de diálogo. Si se establece la marca CF_ENABLETEMPLATE , hInstance es un identificador de un módulo que contiene una plantilla de cuadro de diálogo denominada por el miembro lpTemplateName . Si no se establece ni CF_ENABLETEMPLATEHANDLE ni CF_ENABLETEMPLATE , se omite este miembro.

lpszStyle

Tipo: LPTSTR

Los datos de estilo. Si se especifica la marca CF_USESTYLE , ChooseFont usa los datos de este búfer para inicializar el cuadro combinado Estilo de fuente . Cuando el usuario cierra el cuadro de diálogo, ChooseFont copia la cadena en el cuadro combinado Estilo de fuente en este búfer.

nFontType

Tipo: WORD

Tipo de la fuente seleccionada cuando ChooseFont devuelve. Este miembro puede ser uno o varios de los valores siguientes.

Valor Significado
BOLD_FONTTYPE
0x0100
El peso de la fuente es negrita. Esta información se duplica en el miembro lfWeight de la estructura LOGFONT y es equivalente a FW_BOLD.
ITALIC_FONTTYPE
0x0200
Se establece el atributo de fuente cursiva. Esta información se duplica en el miembro lfItalic de la estructura LOGFONT .
PRINTER_FONTTYPE
0x4000
La fuente es una fuente de impresora.
REGULAR_FONTTYPE
0x0400
El peso de la fuente es normal. Esta información se duplica en el miembro lfWeight de la estructura LOGFONT y es equivalente a FW_REGULAR.
SCREEN_FONTTYPE
0x2000
La fuente es una fuente de pantalla.
SIMULATED_FONTTYPE
0x8000
La fuente se simula mediante la interfaz de dispositivo gráfico (GDI).

___MISSING_ALIGNMENT__

nSizeMin

Tipo: INT

Tamaño de punto mínimo que un usuario puede seleccionar. ChooseFont reconoce este miembro solo si se especifica la marca CF_LIMITSIZE .

nSizeMax

Tipo: INT

Tamaño de punto máximo que un usuario puede seleccionar. ChooseFont reconoce este miembro solo si se especifica la marca CF_LIMITSIZE .

Comentarios

Nota

El encabezado commdlg.h define CHOOSEFONT como alias que selecciona automáticamente la versión ANSI o Unicode de esta función en función de la definición de la constante de preprocesador UNICODE. La combinación del uso del alias neutral de codificación con código que no es neutral de codificación puede dar lugar a errores de coincidencia que dan lugar a errores de compilación o tiempo de ejecución. Para obtener más información, vea Convenciones para prototipos de función.

Requisitos

   
Cliente mínimo compatible Windows 2000 Professional [solo aplicaciones de escritorio]
Servidor mínimo compatible Windows 2000 Server [solo aplicaciones de escritorio]
Encabezado commdlg.h

Consulte también

ChooseFont

Biblioteca de cuadros de diálogo comunes

Conceptual

MAKEINTRESOURCE

Referencia