Compartilhar via


Função DrawFrameControl (winuser.h)

A função DrawFrameControl desenha um controle de quadro do tipo e estilo especificados.

Sintaxe

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

Parâmetros

[in] hdc

Um identificador para o contexto do dispositivo da janela na qual desenhar o controle.

[in] lprc

Um ponteiro para uma estrutura RECT que contém as coordenadas lógicas do retângulo delimitador para controle de quadro.

[in] uType

O tipo de controle de quadro a ser desenhado. Esse parâmetro pode usar um dos valores a seguir.

Valor Significado
DFC_BUTTON
Botão Padrão
DFC_CAPTION
Barra de título
DFC_MENU
Barra de menus
DFC_POPUPMENU
Item de menu pop-up.
DFC_SCROLL
Barra de rolagem

[in] uState

O estado inicial do controle de quadro. Se uType for DFC_BUTTON, uState poderá ser um dos valores a seguir.

Valor Significado
DFCS_BUTTON3STATE
Botão de três estados
DFCS_BUTTONCHECK
Caixa de seleção
DFCS_BUTTONPUSH
Botão de ação
DFCS_BUTTONRADIO
Botão de opção
DFCS_BUTTONRADIOIMAGE
Imagem para botão de opção (se não for quadrado precisa de imagem)
DFCS_BUTTONRADIOMASK
Máscara para botão de opção (se não for quadrado precisa de máscara)
 

Se uType for DFC_CAPTION, uState poderá ser um dos valores a seguir.

Valor Significado
DFCS_CAPTIONCLOSE
Botão Fechar
DFCS_CAPTIONHELP
Botão Ajuda
DFCS_CAPTIONMAX
Botão Maximizar
DFCS_CAPTIONMIN
Botão Minimizar
DFCS_CAPTIONRESTORE
Botão Restaurar
 

Se uType for DFC_MENU, uState poderá ser um dos valores a seguir.

Valor Significado
DFCS_MENUARROW
Seta de submenu
DFCS_MENUARROWRIGHT
Seta de submenu apontando para a esquerda. Isso é usado para os menus em cascata da direita para a esquerda usados com idiomas da direita para a esquerda, como árabe ou hebraico.
DFCS_MENUBULLET
Marcador
DFCS_MENUCHECK
Marca de seleção
 

Se uType for DFC_SCROLL, uState poderá ser um dos valores a seguir.

Valor Significado
DFCS_SCROLLCOMBOBOX
Barra de rolagem da caixa de combinação
DFCS_SCROLLDOWN
Seta para baixo da barra de rolagem
DFCS_SCROLLLEFT
Seta para a esquerda da barra de rolagem
DFCS_SCROLLRIGHT
Seta para a direita da barra de rolagem
DFCS_SCROLLSIZEGRIP
Alça de tamanho no canto inferior direito da janela
DFCS_SCROLLSIZEGRIPRIGHT
Alça de tamanho no canto inferior esquerdo da janela. Isso é usado com idiomas da direita para a esquerda, como árabe ou hebraico.
DFCS_SCROLLUP
Seta para cima da barra de rolagem
 

O estilo a seguir pode ser usado para ajustar o retângulo delimitador do botão de push.

Valor Significado
DFCS_ADJUSTRECT
O retângulo delimitador é ajustado para excluir a borda ao redor do botão de push.
 

Um ou mais dos valores a seguir podem ser usados para definir o estado do controle a ser desenhado.

Valor Significado
DFCS_CHECKED
O botão está marcado.
DFCS_FLAT
Button tem uma borda plana.
DFCS_HOT
O botão é controlado de modo frequente.
DFCS_INACTIVE
O botão está inativo (esmaecido).
DFCS_MONO
Button tem uma borda monocromática.
DFCS_PUSHED
O botão é pressionado.
DFCS_TRANSPARENT
O plano de fundo permanece intocado. Esse sinalizador só pode ser combinado com DFCS_MENUARROWUP ou DFCS_MENUARROWDOWN.

Valor retornado

Se a função for bem-sucedida, o valor retornado será diferente de zero.

Se a função falhar, o valor retornado será zero.

Comentários

Se uType for DFC_MENU ou DFC_BUTTON e uState não for DFCS_BUTTONPUSH, o controle de quadro será uma máscara preto-sobre-branco (ou seja, um controle de quadro preto em um plano de fundo branco). Nesses casos, o aplicativo deve passar um identificador para um controle de dispositivo de memória de bitmap. Em seguida, o aplicativo pode usar o bitmap associado como o parâmetro hbmMask para a função MaskBlt ou pode usar o contexto do dispositivo como um parâmetro para a função BitBlt usando ROPs como SRCAND e SRCINVERT.

Virtualização de DPI

Essa API não participa da virtualização de DPI. A entrada fornecida é sempre em termos de pixels físicos e não está relacionada ao contexto de chamada.

Requisitos

Requisito Valor
Cliente mínimo com suporte Windows 2000 Professional [somente aplicativos da área de trabalho]
Servidor mínimo com suporte Windows 2000 Server [somente aplicativos da área de trabalho]
Plataforma de Destino Windows
Cabeçalho winuser.h (inclua Windows.h)
Biblioteca User32.lib
DLL User32.dll
Conjunto de APIs ext-ms-win-ntuser-draw-l1-1-2 (introduzido no Windows 10, versão 10.0.10240)

Confira também

Funções de pintura e desenho

Visão geral de pintura e desenho

RECT