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
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.clrBtnText
element .
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.