Udostępnij za pośrednictwem


Klasa CMFCBaseVisualManager

Warstwa między pochodnymi menedżerami wizualizacji a interfejsem API motywu systemu Windows.

CMFCBaseVisualManager ładuje UxTheme.dll, jeśli jest dostępna, i zarządza dostępem do metod interfejsu API motywu systemu Windows.

Ta klasa jest używana tylko do użytku wewnętrznego.

Składnia

class CMFCBaseVisualManager: public CObject

Elementy członkowskie

Konstruktory publiczne

Nazwa/nazwisko opis
CMFCBaseVisualManager::CMFCBaseVisualManager Tworzy i inicjuje CMFCBaseVisualManager obiekt.
CMFCBaseVisualManager::~CMFCBaseVisualManager Destruktor.

Metody publiczne

Nazwa/nazwisko opis
CMFCBaseVisualManager::D rawCheckBox Rysuje kontrolkę pola wyboru przy użyciu bieżącego motywu systemu Windows.
CMFCBaseVisualManager::D rawComboBorder Rysuje obramowanie pola kombi przy użyciu bieżącego motywu systemu Windows.
CMFCBaseVisualManager::D rawComboDropButton Rysuje przycisk listy rozwijanej pola kombi przy użyciu bieżącego motywu systemu Windows.
CMFCBaseVisualManager::D rawPushButton Rysuje przycisk wypychania przy użyciu bieżącego motywu systemu Windows.
CMFCBaseVisualManager::D rawRadioButton Rysuje kontrolkę przycisku radiowego przy użyciu bieżącego motywu systemu Windows.
CMFCBaseVisualManager::D rawStatusBarProgress Rysuje pasek postępu na kontrolce paska stanu ( klasa CMFCStatusBar) przy użyciu bieżącego motywu systemu Windows.
CMFCBaseVisualManager::FillReBarPane Wypełnia tło kontrolki paska pomocniczego przy użyciu bieżącego motywu systemu Windows.
CMFCBaseVisualManager::GetStandardWindowsTheme Pobiera bieżący motyw systemu Windows.

Metody chronione

Nazwa/nazwisko opis
CMFCBaseVisualManager::CleanUpThemes Wywołania CloseThemeData wszystkich dojść uzyskanych w pliku UpdateSystemColors.
CMFCBaseVisualManager::UpdateSystemColors Wywołania OpenThemeData umożliwiające uzyskanie uchwytów do rysowania różnych kontrolek: okien, pasków narzędzi, przycisków itd.

Uwagi

Nie trzeba bezpośrednio tworzyć wystąpień obiektów tej klasy.

Ponieważ jest to klasa bazowa dla wszystkich menedżerów wizualizacji, wystarczy wywołać cmFCVisualManager::GetInstance, uzyskać wskaźnik do bieżącego programu Visual Manager i uzyskać dostęp do metod używania CMFCBaseVisualManager tego wskaźnika. Jeśli jednak musisz wyświetlić kontrolkę przy użyciu bieżącego motywu systemu Windows, lepiej użyć interfejsu CMFCVisualManagerWindows .

Hierarchia dziedziczenia

Obiekt CObject

CMFCBaseVisualManager

Wymagania

Nagłówek: afxvisualmanager.h

CMFCBaseVisualManager::CleanUpThemes

Wywołania CloseThemeData wszystkich dojść uzyskanych w pliku UpdateSystemColors.

void CleanUpThemes();

Uwagi

Tylko do użytku wewnętrznego.

CMFCBaseVisualManager::CMFCBaseVisualManager

Tworzy i inicjuje CMFCBaseVisualManager obiekt.

CMFCBaseVisualManager();

CMFCBaseVisualManager::D rawCheckBox

Rysuje kontrolkę pola wyboru przy użyciu bieżącego motywu systemu Windows.

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

);

Parametry

PDC
[in] Wskaźnik do kontekstu urządzenia

Rect
[in] Prostokąt ograniczenia pola wyboru.

bHighlighted
[in] Określa, czy pole wyboru jest wyróżnione.

nState
[in] 0 dla niezaznaczonego, 1 dla sprawdzanej normy,

2 dla mieszanego normalnego.

bEnabled
[in] Określa, czy pole wyboru jest włączone.

bPressed
[in] Określa, czy pole wyboru jest naciśnięty.

Wartość zwracana

Wartość TRUE, jeśli interfejs API motywu jest włączony; w przeciwnym razie FAŁSZ.

Uwagi

Wartości nState odpowiadają następującym stylom pola wyboru.

nState Styl pola wyboru
0 CBS_UNCHECKEDNORMAL
1 CBS_CHECKEDNORMAL
2 CBS_MIXEDNORMAL

CMFCBaseVisualManager::D rawComboBorder

Rysuje obramowanie pola kombi przy użyciu bieżącego motywu systemu Windows.

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

Parametry

PDC
[in] Wskaźnik do kontekstu urządzenia.

Rect
[in] Granica prostokąta obramowania pola kombi.

bDisabled
[in] Określa, czy obramowanie pola kombi jest wyłączone.

bIsDropped
[in] Określa, czy obramowanie pola kombi jest porzucane.

bIsHighlighted
[in] Określa, czy obramowanie pola kombi jest wyróżnione.

Wartość zwracana

Wartość TRUE, jeśli interfejs API motywu jest włączony; w przeciwnym razie FAŁSZ.

CMFCBaseVisualManager::D rawComboDropButton

Rysuje przycisk listy rozwijanej pola kombi przy użyciu bieżącego motywu systemu Windows.

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

Parametry

PDC
[in] Wskaźnik do kontekstu urządzenia.

Rect
[in] Prostokąt ograniczenia przycisku listy rozwijanej pola kombi.

bDisabled
[in] Określa, czy przycisk listy rozwijanej pola kombi jest wyłączony.

bIsDropped
[in] Określa, czy przycisk listy rozwijanej pola kombi jest porzucany.

bIsHighlighted
[in] Określa, czy przycisk listy rozwijanej pola kombi jest wyróżniony.

Wartość zwracana

Wartość TRUE, jeśli interfejs API motywu jest włączony; w przeciwnym razie FAŁSZ.

CMFCBaseVisualManager::D rawPushButton

Rysuje przycisk wypychania przy użyciu bieżącego motywu systemu Windows.

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

Parametry

PDC
[in] Wskaźnik do kontekstu urządzenia.

Rect
[in] Prostokąt ograniczenia przycisku.

PButton
[in] Wskaźnik do obiektu klasy CMFCButton, aby narysować.

uiState
[in] Ignorowane. Stan jest pobierany z elementu pButton.

Wartość zwracana

Wartość TRUE, jeśli interfejs API motywu jest włączony; w przeciwnym razie FAŁSZ.

CMFCBaseVisualManager::D rawRadioButton

Rysuje kontrolkę przycisku radiowego przy użyciu bieżącego motywu systemu Windows.

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

Parametry

PDC
[in] Wskaźnik do kontekstu urządzenia.

Rect
[in] Prostokąt ograniczenia przycisku radiowego.

bHighlighted
[in] Określa, czy przycisk radiowy jest wyróżniony.

bChecked
[in] Określa, czy przycisk radiowy jest zaznaczony.

bEnabled
[in] Określa, czy przycisk radiowy jest włączony.

bPressed
[in] Określa, czy przycisk radiowy jest naciśnięty.

Wartość zwracana

Wartość TRUE, jeśli interfejs API motywu jest włączony; w przeciwnym razie FAŁSZ.

CMFCBaseVisualManager::D rawStatusBarProgress

Rysuje pasek postępu na kontrolce paska stanu ( klasa CMFCStatusBar) przy użyciu bieżącego motywu systemu Windows.

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

Parametry

PDC
[in] Wskaźnik do kontekstu urządzenia.

pStatusBar
[in] Wskaźnik do paska stanu. Ta wartość jest ignorowana.

retProgress
[in] Prostokąt ograniczenia paska postępu we współrzędnych pDC .

nProgressTotal
[in] Łączna wartość postępu.

nProgressCurr
[in] Bieżąca wartość postępu.

clrBar
[in] Kolor początkowy. CMFCBaseVisualManager ignoruje to. Klasy pochodne mogą używać jej do gradientów kolorów.

clrProgressBarDest
[in] Kolor końcowy. CMFCBaseVisualManager ignoruje to. Klasy pochodne mogą używać jej do gradientów kolorów.

clrProgressText
[in] Kolor tekstu postępu. CMFCBaseVisualManager ignoruje to. Kolor tekstu jest definiowany przez afxGlobalData.clrBtnTextelement .

bProgressText
[in] Określa, czy ma być wyświetlany tekst postępu.

Wartość zwracana

Wartość TRUE, jeśli interfejs API motywu jest włączony; w przeciwnym razie FAŁSZ.

CMFCBaseVisualManager::FillReBarPane

Wypełnia tło kontrolki paska pomocniczego przy użyciu bieżącego motywu systemu Windows.

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

Parametry

PDC
[in] Wskaźnik do kontekstu urządzenia.

Pasek p
[in] Wskaźnik do okienka, którego tło powinno być rysowane.

rectClient
[in] Prostokąt ograniczenia obszaru do wypełnienia.

Wartość zwracana

Wartość TRUE, jeśli interfejs API motywu jest włączony; w przeciwnym razie FAŁSZ.

CMFCBaseVisualManager::GetStandardWindowsTheme

Pobiera bieżący motyw systemu Windows.

virtual WinXpTheme GetStandardWindowsTheme();

Wartość zwracana

Aktualnie wybrany kolor motywu systemu Windows. Może być jedną z następujących wyliczonych wartości:

  • WinXpTheme_None — nie ma włączonego motywu.

  • WinXpTheme_NonStandard - zaznaczono motyw niestandardowy (oznacza to, że motyw jest zaznaczony, ale żaden z poniższej listy).

  • WinXpTheme_Blue - niebieski motyw (Luna).

  • WinXpTheme_Olive - motyw oliwny.

  • WinXpTheme_Silver - srebrny motyw.

CMFCBaseVisualManager::UpdateSystemColors

Wywołania OpenThemeData umożliwiające uzyskanie uchwytów do rysowania różnych kontrolek: okien, pasków narzędzi, przycisków itd.

void UpdateSystemColors();

Uwagi

Tylko do użytku wewnętrznego.

Zobacz też

Wykres hierarchii
Klasy