Sdílet prostřednictvím


CMFCBaseVisualManager – třída

Vrstva mezi odvozeným správcem vizuálů a rozhraním API motivu Windows.

CMFCBaseVisualManager načte UxTheme.dll, pokud je k dispozici, a spravuje přístup k metodám rozhraní API motivu Systému Windows.

Tato třída je určena pouze pro interní použití.

Syntaxe

class CMFCBaseVisualManager: public CObject

Členové

Veřejné konstruktory

Název Popis
CMFCBaseVisualManager::CMFCBaseVisualManager Vytvoří a inicializuje CMFCBaseVisualManager objekt.
CMFCBaseVisualManager::~CMFCBaseVisualManager Destruktor.

Veřejné metody

Název Popis
CMFCBaseVisualManager::D rawCheckBox Nakreslí ovládací prvek zaškrtávacího políčka pomocí aktuálního motivu Windows.
CMFCBaseVisualManager::D rawComboBorder Nakreslí ohraničení pole se seznamem pomocí aktuálního motivu Windows.
CMFCBaseVisualManager::D rawComboDropButton Nakreslí rozevírací tlačítko pole se seznamem pomocí aktuálního motivu Windows.
CMFCBaseVisualManager::D rawPushButton Nakreslí tlačítko push pomocí aktuálního motivu Windows.
CMFCBaseVisualManager::D rawRadioButton Nakreslí ovládací prvek přepínač pomocí aktuálního motivu Windows.
CMFCBaseVisualManager::D rawStatusBarProgress Nakreslí indikátor průběhu na ovládací prvek stavového řádku ( CMFCStatusBar – třída) pomocí aktuálního motivu Windows.
CMFCBaseVisualManager::FillReBarPane Vyplní pozadí ovládacího prvku rebar pomocí aktuálního motivu Windows.
CMFCBaseVisualManager::GetStandardWindowsTheme Získá aktuální motiv Windows.

Chráněné metody

Název Popis
CMFCBaseVisualManager::CleanUpThemes Volání CloseThemeData pro všechny popisovače získané v UpdateSystemColors.
CMFCBaseVisualManager::UpdateSystemColors Volání OpenThemeData pro získání popisovačů pro kreslení různých ovládacích prvků: okna, panely nástrojů, tlačítka atd.

Poznámky

Není nutné vytvořit instanci objektů této třídy přímo.

Protože se jedná o základní třídu pro všechny správce vizuálů, můžete jednoduše volat CMFCVisualManager::GetInstance, získat ukazatel na aktuální Visual Manager a získat přístup k metodám pro CMFCBaseVisualManager použití daného ukazatele. Pokud ale potřebujete zobrazit ovládací prvek pomocí aktuálního motivu Windows, je lepší použít CMFCVisualManagerWindows rozhraní.

Hierarchie dědičnosti

Objekt CObject

CMFCBaseVisualManager

Požadavky

Záhlaví: afxvisualmanager.h

CMFCBaseVisualManager::CleanUpThemes

Volání CloseThemeData pro všechny popisovače získané v UpdateSystemColors.

void CleanUpThemes();

Poznámky

Jen pro interní potřebu

CMFCBaseVisualManager::CMFCBaseVisualManager

Vytvoří a inicializuje CMFCBaseVisualManager objekt.

CMFCBaseVisualManager();

CMFCBaseVisualManager::D rawCheckBox

Nakreslí ovládací prvek zaškrtávacího políčka pomocí aktuálního motivu Windows.

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

);

Parametry

pDC
[v] Ukazatel na kontext zařízení

Rect
[v] Ohraničující obdélník zaškrtávacího políčka.

bHighlighted
[v] Určuje, jestli je zaškrtávací políčko zvýrazněné.

nState
[in] 0 pro nezaškrtnuté, 1 pro zaškrtnuté normální,

2 pro smíšený normální.

bEnabled
[v] Určuje, jestli je zaškrtávací políčko povolené.

bPressed
[v] Určuje, zda je zaškrtávací políčko stisknuto.

Návratová hodnota

TRUE, pokud je povolené rozhraní API motivu; jinak NEPRAVDA.

Poznámky

Hodnoty nState odpovídají následujícím stylům zaškrtávacích políček.

nState Styl zaškrtávacího políčka
0 CBS_UNCHECKEDNORMAL
0 CBS_CHECKEDNORMAL
2 CBS_MIXEDNORMAL

CMFCBaseVisualManager::D rawComboBorder

Nakreslí ohraničení pole se seznamem pomocí aktuálního motivu Windows.

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

Parametry

pDC
[v] Ukazatel na kontext zařízení.

Rect
[v] Ohraničující obdélník ohraničení pole se seznamem

bDisabled
[v] Určuje, jestli je ohraničení pole se seznamem zakázané.

BIsDropped
[v] Určuje, jestli je ohraničení pole se seznamem vyřazeno.

bIsHighlighted
[v] Určuje, zda je zvýrazněno ohraničení pole se seznamem.

Návratová hodnota

TRUE, pokud je povolené rozhraní API motivu; jinak NEPRAVDA.

CMFCBaseVisualManager::D rawComboDropButton

Nakreslí rozevírací tlačítko pole se seznamem pomocí aktuálního motivu Windows.

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

Parametry

pDC
[v] Ukazatel na kontext zařízení.

Rect
[v] Ohraničující obdélník rozevíracího seznamu pole se seznamem

bDisabled
[v] Určuje, jestli je rozevírací tlačítko se seznamem zakázané.

BIsDropped
[v] Určuje, jestli je rozevírací tlačítko pole se seznamem vyřazeno.

bIsHighlighted
[v] Určuje, jestli je zvýrazněné rozevírací tlačítko pole se seznamem.

Návratová hodnota

TRUE, pokud je povolené rozhraní API motivu; jinak NEPRAVDA.

CMFCBaseVisualManager::D rawPushButton

Nakreslí tlačítko push pomocí aktuálního motivu Windows.

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

Parametry

pDC
[v] Ukazatel na kontext zařízení.

Rect
[v] Ohraničující obdélník tlačítka.

pButton
[v] Ukazatel na OBJEKT CMFCButton Class , který chcete nakreslit.

uiState
[v] Ignorovaný. Stav je převzat z pButton.

Návratová hodnota

TRUE, pokud je povolené rozhraní API motivu; jinak NEPRAVDA.

CMFCBaseVisualManager::D rawRadioButton

Nakreslí ovládací prvek přepínač pomocí aktuálního motivu Windows.

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

Parametry

pDC
[v] Ukazatel na kontext zařízení.

Rect
[v] Ohraničující obdélník přepínače.

bHighlighted
[v] Určuje, jestli je přepínač zvýrazněný.

bChecked
[v] Určuje, zda je přepínač zaškrtnut.

bEnabled
[v] Určuje, jestli je přepínač povolený.

bPressed
[v] Určuje, zda je přepínač stisknut.

Návratová hodnota

TRUE, pokud je povolené rozhraní API motivu; jinak NEPRAVDA.

CMFCBaseVisualManager::D rawStatusBarProgress

Nakreslí indikátor průběhu na ovládací prvek stavového řádku ( CMFCStatusBar – třída) pomocí aktuálního motivu Windows.

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

Parametry

pDC
[v] Ukazatel na kontext zařízení.

pStatusBar
[v] Ukazatel na stavový řádek Tato hodnota je ignorována.

rectProgress
[v] Ohraničující obdélník indikátoru průběhu v souřadnicích pDC .

nProgressTotal
[v] Celková hodnota průběhu.

nProgressCurr
[v] Aktuální hodnota průběhu.

clrBar
[v] Počáteční barva. CMFCBaseVisualManager to ignoruje. Odvozené třídy ji mohou použít pro barevné přechody.

clrProgressBarDest
[v] Koncová barva. CMFCBaseVisualManager to ignoruje. Odvozené třídy ji mohou použít pro barevné přechody.

clrProgressText
[v] Barva textu průběhu CMFCBaseVisualManager to ignoruje. Barva textu je definována .afxGlobalData.clrBtnText

bProgressText
[v] Určuje, jestli se má zobrazovat text průběhu.

Návratová hodnota

TRUE, pokud je povolené rozhraní API motivu; jinak NEPRAVDA.

CMFCBaseVisualManager::FillReBarPane

Vyplní pozadí ovládacího prvku rebar pomocí aktuálního motivu Windows.

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

Parametry

pDC
[v] Ukazatel na kontext zařízení.

pBar
[v] Ukazatel na podokno, jehož pozadí by mělo být nakresleno.

rectClient
[v] Ohraničující obdélník oblasti, která se má vyplnit.

Návratová hodnota

TRUE, pokud je povolené rozhraní API motivu; jinak NEPRAVDA.

CMFCBaseVisualManager::GetStandardWindowsTheme

Získá aktuální motiv Windows.

virtual WinXpTheme GetStandardWindowsTheme();

Návratová hodnota

Aktuálně vybraná barva motivu Windows. Může to být jedna z následujících výčtových hodnot:

  • WinXpTheme_None - Není povolený žádný motiv.

  • WinXpTheme_NonStandard - Je vybrán nestandardní motiv (což znamená, že je vybraný motiv, ale žádný z níže uvedených seznamů).

  • WinXpTheme_Blue - modrý motiv (Luna).

  • WinXpTheme_Olive - olivový motiv.

  • WinXpTheme_Silver - stříbrný motiv.

CMFCBaseVisualManager::UpdateSystemColors

Volání OpenThemeData pro získání popisovačů pro kreslení různých ovládacích prvků: okna, panely nástrojů, tlačítka atd.

void UpdateSystemColors();

Poznámky

Jen pro interní potřebu

Viz také

Graf hierarchie
Třídy