Partilhar via


Classe CMFCBaseVisualManager

Observação

A biblioteca Microsoft Foundation Classes (MFC) continua a ser suportada. No entanto, já não estamos a adicionar funcionalidades nem a atualizar a documentação.

Uma camada entre gestores visuais derivados e a API de Temas do Windows.

CMFCBaseVisualManager carrega UxTheme.dll, se disponível, e gere o acesso aos métodos da API de Temas do Windows.

Esta aula é apenas para uso interno.

Sintaxe

class CMFCBaseVisualManager: public CObject

Membros

Construtores Públicos

Nome Description
CMFCBaseVisualManager::CMFCBaseVisualManager Constrói e inicializa um CMFCBaseVisualManager objeto.
CMFCBaseVisualManager::~CMFCBaseVisualManager Destruidor.

Métodos Públicos

Nome Description
CMFCBaseVisualManager::D rawCheckCheckBox Desenha um controlo de caixa de seleção usando o tema atual do Windows.
CMFCBaseVisualManager::D rawComboBorder Desenha uma borda de caixa combinada usando o tema atual do Windows.
CMFCBaseVisualManager::D rawComboDropButton Desenha um botão suspenso de uma caixa de combo usando o tema atual do Windows.
CMFCBaseVisualManager::D rawPushButton Desenha um botão usando o tema atual do Windows.
CMFCBaseVisualManager::D rawRadioButtonT Desenha um controlo de botão de rádio usando o tema atual do Windows.
CMFCBaseVisualManager::D rawStatusBarProgress Desenha uma barra de progresso num controlo de barra de estado ( CMFCStatusBar Class) usando o tema atual do Windows.
CMFCBaseVisualManager::FillReBarPane Preenche o fundo do controlo de barra usando o tema atual do Windows.
CMFCBaseVisualManager::GetStandardWindowsTheme Recebe o tema atual do Windows.

Métodos Protegidos

Nome Description
CMFCBaseVisualManager::CleanUpThemes Chamadas CloseThemeData para todos os handles obtidos em UpdateSystemColors.
CMFCBaseVisualManager::UpdateSystemColors Chamadas OpenThemeData para obter alças para desenhar vários controlos: janelas, barras de ferramentas, botões, e assim por diante.

Observações

Não tens de instanciar objetos desta classe diretamente.

Como é uma classe base para todos os gestores visuais, pode simplesmente chamar CMFCVisualManager::GetInstance, obter um ponteiro para o Gestor Visual atual e aceder aos métodos para CMFCBaseVisualManager usar esse ponteiro. No entanto, se tiver de mostrar um controlo usando o tema atual do Windows, é melhor usar a CMFCVisualManagerWindows interface.

Hierarquia de herança

CObject

CMFCBaseVisualManager

Requerimentos

Cabeçalho: afxvisualmanager.h

CMFCBaseVisualManager::CleanUpThemes

Chamadas CloseThemeData para todos os handles obtidos em UpdateSystemColors.

void CleanUpThemes();

Observações

Apenas para uso interno.

CMFCBaseVisualManager::CMFCBaseVisualManager

Constrói e inicializa um CMFCBaseVisualManager objeto.

CMFCBaseVisualManager();

CMFCBaseVisualManager::D rawCheckCheckBox

Desenha um controlo de caixa de seleção usando o tema atual do Windows.

virtual BOOL DrawCheckBox(
    CDC* pDC,
    CRect rect,
    BOOL bHighlighted,
    int nState,
    BOOL bEnabled,
    BOOL bPressed);

);

Parâmetros

pDC
[dentro] Um apontador para o contexto de um dispositivo

retângulo
[dentro] O retângulo delimitador da caixa de seleção.

bDestacado
[dentro] Especifica se a caixa de seleção está destacada.

nState
[em] 0 para não verificado, 1 para verificado normal,

2 para misto normal.

bEnabled
[dentro] Especifica se a caixa de seleção está ativada.

bPressed
[dentro] Especifica se a caixa de verificação está pressionada.

Valor de retorno

TRUE se a API do Tema estiver ativada; caso contrário, FALSO.

Observações

Os valores do nState correspondem aos seguintes estilos de caixas de seleção.

nState Estilo de marcar a caixa
0 CBS_UNCHECKEDNORMAL
1 CBS_CHECKEDNORMAL
2 CBS_MIXEDNORMAL

CMFCBaseVisualManager::D rawComboBorder

Desenha a borda da caixa de combo usando o tema atual do Windows.

virtual BOOL DrawComboBorder(
    CDC* pDC,
    CRect rect,
    BOOL bDisabled,
    BOOL bIsDropped,
    BOOL bIsHighlighted);

Parâmetros

pDC
[dentro] Um apontador para o contexto de um dispositivo.

retângulo
[dentro] Retângulo delimitado da borda da caixa de combo.

bDeficiente
[dentro] Especifica se a borda da caixa combinada está desativada.

bIsDropped
[dentro] Especifica se a borda da caixa de combo é descida.

bIsHighlighted
[dentro] Especifica se a borda da caixa do combo está destacada.

Valor de retorno

TRUE se a API do Tema estiver ativada; caso contrário, FALSO.

CMFCBaseVisualManager::D rawComboDropButton

Desenha um botão suspenso de uma caixa de combo usando o tema atual do Windows.

virtual BOOL DrawComboDropButton(
    CDC* pDC,
    CRect rect,
    BOOL bDisabled,
    BOOL bIsDropped,
    BOOL bIsHighlighted);

Parâmetros

pDC
[dentro] Um apontador para o contexto de um dispositivo.

retângulo
[dentro] O retângulo delimitador do botão suspenso da caixa de combo.

bDeficiente
[dentro] Especifica se o botão suspenso da caixa de combo está desativado.

bIsDropped
[dentro] Especifica se o botão suspenso da caixa de combo é descido.

bIsHighlighted
[dentro] Especifica se o botão suspenso da caixa de combo está destacado.

Valor de retorno

TRUE se a API do Tema estiver ativada; caso contrário, FALSO.

CMFCBaseVisualManager::D rawPushButton

Desenha um botão usando o tema atual do Windows.

virtual BOOL DrawPushButton(
    CDC* pDC,
    CRect rect,
    CMFCButton* pButton,
    UINT uiState);

Parâmetros

pDC
[dentro] Um apontador para o contexto de um dispositivo.

retângulo
[dentro] O retângulo delimitador do botão.

pButton
[dentro] Um apontador para o objeto CMFCButton Class para desenhar.

uiState
[dentro] Ignorado. O estado é retirado do pButton.

Valor de retorno

TRUE se a API do Tema estiver ativada; caso contrário, FALSO.

CMFCBaseVisualManager::D rawRadioButtonT

Desenha um controlo de botão de rádio usando o tema atual do Windows.

virtual BOOL DrawRadioButton(
    CDC* pDC,
    CRect rect,
    BOOL bHighlighted,
    BOOL bChecked,
    BOOL bEnabled,
    BOOL bPressed);

Parâmetros

pDC
[dentro] Um apontador para o contexto de um dispositivo.

retângulo
[dentro] O retângulo delimitador do botão de rádio.

bDestacado
[dentro] Especifica se o botão de rádio está destacado.

bVerificado
[dentro] Especifica se o botão de rádio está marcado.

bEnabled
[dentro] Especifica se o botão de rádio está ativado.

bPressed
[dentro] Especifica se o botão de rádio é pressionado.

Valor de retorno

TRUE se a API do Tema estiver ativada; caso contrário, FALSO.

CMFCBaseVisualManager::D rawStatusBarProgress

Desenha a barra de progresso no controlo da barra de estado ( CMFCStatusBar Class) usando o tema atual do Windows.

virtual BOOL DrawStatusBarProgress(
    CDC* pDC,
    CMFCStatusBar* pStatusBar,
    CRect rectProgress,
    int nProgressTotal,
    int nProgressCurr,
    COLORREF clrBar,
    COLORREF clrProgressBarDest,
    COLORREF clrProgressText,
    BOOL bProgressText);

Parâmetros

pDC
[dentro] Um apontador para o contexto de um dispositivo.

pStatusBar
[dentro] Um indicador para a barra de estado. Este valor é ignorado.

rectProgress
[dentro] O retângulo delimitador da barra de progresso em coordenadas pDC .

nProgressTotal
[dentro] O valor total do progresso.

nProgressCurr
[dentro] O valor atual de progresso.

clrBar
[dentro] A cor inicial. CMFCBaseVisualManager ignora isto. As classes derivadas podem usá-lo para gradientes de cor.

clrProgressBarDest
[dentro] A cor da extremidade. CMFCBaseVisualManager ignora isto. As classes derivadas podem usá-lo para gradientes de cor.

clrProgressText
[dentro] Cor do texto de progresso. CMFCBaseVisualManager ignora isto. A cor do texto é definida por afxGlobalData.clrBtnText.

bProgressText
[dentro] Especifica se deve mostrar o texto de progresso.

Valor de retorno

TRUE se a API do Tema estiver ativada; caso contrário, FALSO.

CMFCBaseVisualManager::FillReBarPane

Preenche o fundo do controlo de barra usando o tema atual do Windows.

virtual void FillReBarPane(
    CDC* pDC,
    CBasePane* pBar,
    CRect rectClient);

Parâmetros

pDC
[dentro] Um apontador para o contexto de um dispositivo.

pBar
[dentro] Um apontador para um painel cujo fundo deve ser desenhado.

rectClient
[dentro] O retângulo delimitador da área a preencher.

Valor de retorno

TRUE se a API do Tema estiver ativada; caso contrário, FALSO.

CMFCBaseVisualManager::GetStandardWindowsTheme

Recebe o tema atual do Windows.

virtual WinXpTheme GetStandardWindowsTheme();

Valor de retorno

A cor do Tema Windows atualmente selecionada. Pode ser um dos seguintes valores enumerados:

  • WinXpTheme_None - Não há tema ativado.

  • WinXpTheme_NonStandard - Tema não padrão é selecionado (ou seja, um tema é selecionado, mas nenhum da lista abaixo).

  • WinXpTheme_Blue - tema azul (Luna).

  • WinXpTheme_Olive - Tema azeitona.

  • WinXpTheme_Silver - Tema prateado.

CMFCBaseVisualManager::UpdateSystemColors

Chamadas OpenThemeData para obter alças para desenhar vários controlos: janelas, barras de ferramentas, botões, e assim por diante.

void UpdateSystemColors();

Observações

Apenas para uso interno.

Consulte também

Gráfico de Hierarquia
Classes