Función DrawFrameControl (winuser.h)

La función DrawFrameControl dibuja un control de marco del tipo y estilo especificados.

Sintaxis

BOOL DrawFrameControl(
  [in] HDC    hdc,
  [in] LPRECT lprc,
  [in] UINT   uType,
  [in] UINT   uState
);

Parámetros

[in] hdc

Identificador del contexto del dispositivo de la ventana en la que se va a dibujar el control.

[in] lprc

Puntero a una estructura RECT que contiene las coordenadas lógicas del rectángulo delimitador para el control de fotogramas.

[in] uType

Tipo de control de marco que se va a dibujar. Este parámetro puede ser uno de los valores siguientes.

Valor Significado
DFC_BUTTON
Botón Estándar
DFC_CAPTION
Barra de título
DFC_MENU
Barra de menús
DFC_POPUPMENU
Elemento de menú emergente.
DFC_SCROLL
Barra de desplazamiento

[in] uState

Estado inicial del control de marco. Si uType es DFC_BUTTON, uState puede ser uno de los valores siguientes.

Valor Significado
DFCS_BUTTON3STATE
: botón de tres estados
DFCS_BUTTONCHECK
Casilla de verificación
DFCS_BUTTONPUSH
: botón de comando
DFCS_BUTTONRADIO
Botón de selección
DFCS_BUTTONRADIOIMAGE
: imagen para el botón de radio (si no es cuadrado, necesita una imagen)
DFCS_BUTTONRADIOMASK
: máscara para el botón de radio (si no es cuadrado, necesita una máscara)
 

Si uType es DFC_CAPTION, uState puede ser uno de los valores siguientes.

Valor Significado
DFCS_CAPTIONCLOSE
Botón Cerrar
DFCS_CAPTIONHELP
Botón Ayuda
DFCS_CAPTIONMAX
Botón Maximizar
DFCS_CAPTIONMIN
Botón Minimizar
DFCS_CAPTIONRESTORE
Botón Restaurar
 

Si uType es DFC_MENU, uState puede ser uno de los valores siguientes.

Valor Significado
DFCS_MENUARROW
: flecha de submenú
DFCS_MENUARROWRIGHT
Flecha de submenú que apunta a la izquierda. Esto se usa para los menús en cascada de derecha a izquierda que se usan con idiomas de derecha a izquierda, como árabe o hebreo.
DFCS_MENUBULLET
Bala
DFCS_MENUCHECK
Marca de verificación
 

Si uType es DFC_SCROLL, uState puede ser uno de los valores siguientes.

Valor Significado
DFCS_SCROLLCOMBOBOX
: barra de desplazamiento de cuadro combinado
DFCS_SCROLLDOWN
: flecha abajo de barra de desplazamiento
DFCS_SCROLLLEFT
: flecha izquierda de barra de desplazamiento
DFCS_SCROLLRIGHT
: flecha derecha de barra de desplazamiento
DFCS_SCROLLSIZEGRIP
Agarre de tamaño en la esquina inferior derecha de la ventana
DFCS_SCROLLSIZEGRIPRIGHT
Agarre de tamaño en la esquina inferior izquierda de la ventana. Esto se usa con idiomas de derecha a izquierda, como árabe o hebreo.
DFCS_SCROLLUP
: flecha arriba de barra de desplazamiento
 

El siguiente estilo se puede usar para ajustar el rectángulo delimitador del botón de inserción.

Valor Significado
DFCS_ADJUSTRECT
El rectángulo delimitador se ajusta para excluir el borde circundante del botón de inserción.
 

Se pueden usar uno o varios de los valores siguientes para establecer el estado del control que se va a dibujar.

Valor Significado
DFCS_CHECKED
El botón está activado.
DFCS_FLAT
El botón tiene un borde plano.
DFCS_HOT
El botón tiene un seguimiento frecuente.
DFCS_INACTIVE
El botón está inactivo (atenuado).
DFCS_MONO
El botón tiene un borde monocromático.
DFCS_PUSHED
Se presiona el botón.
DFCS_TRANSPARENT
El fondo permanece intacto. Esta marca solo se puede combinar con DFCS_MENUARROWUP o DFCS_MENUARROWDOWN.

Valor devuelto

Si la función se realiza correctamente, el valor devuelto es distinto de cero.

Si la función no se realiza correctamente, el valor devuelto es cero.

Comentarios

Si uType es DFC_MENU o DFC_BUTTON y uState no es DFCS_BUTTONPUSH, el control de marco es una máscara negra en blanco (es decir, un control de marco negro en un fondo blanco). En tales casos, la aplicación debe pasar un identificador a un control de dispositivo de memoria de mapa de bits. A continuación, la aplicación puede usar el mapa de bits asociado como parámetro hbmMask para la función MaskBlt , o bien puede usar el contexto del dispositivo como parámetro para la función BitBlt mediante ROPs como SRCAND y SRCINVERT.

Virtualización de PPP

Esta API no participa en la virtualización de PPP. La entrada especificada siempre está en términos de píxeles físicos y no está relacionada con el contexto de llamada.

Requisitos

Requisito Value
Cliente mínimo compatible Windows 2000 Professional [solo aplicaciones de escritorio]
Servidor mínimo compatible Windows 2000 Server [solo aplicaciones de escritorio]
Plataforma de destino Windows
Encabezado winuser.h (incluir Windows.h)
Library User32.lib
Archivo DLL User32.dll
Conjunto de API ext-ms-win-ntuser-draw-l1-1-2 (introducido en Windows 10, versión 10.0.10240)

Consulte también

Funciones de dibujo y dibujo

Información general sobre pintura y dibujo

RECT