CMFCBaseVisualManager クラス
派生ビジュアル マネージャーと Windows テーマ API の間のレイヤー。
CMFCBaseVisualManager
は、UxTheme.dll (使用可能な場合) を読み込み、Windows テーマ API メソッドへのアクセスを管理します。
このクラスは内部でのみ使用されます。
構文
class CMFCBaseVisualManager: public CObject
メンバー
パブリック コンストラクター
名前 | 説明 |
---|---|
CMFCBaseVisualManager::CMFCBaseVisualManager | CMFCBaseVisualManager オブジェクトを構築して初期化します。 |
CMFCBaseVisualManager::~CMFCBaseVisualManager |
デストラクターです。 |
パブリック メソッド
名前 | 説明 |
---|---|
CMFCBaseVisualManager::D rawCheckBox | 現在の Windows テーマを使用してチェック ボックス コントロールを描画します。 |
CMFCBaseVisualManager::D rawComboBorder | 現在の Windows テーマを使用してコンボ ボックスの境界線を描画します。 |
CMFCBaseVisualManager::D rawComboDropButton | 現在の Windows テーマを使用してコンボ ボックスのドロップダウン ボタンを描画します。 |
CMFCBaseVisualManager::D rawPushButton | 現在の Windows テーマを使用してプッシュ ボタンを描画します。 |
CMFCBaseVisualManager::D rawRadioButton | 現在の Windows テーマを使用して、ラジオ ボタン コントロールを描画します。 |
CMFCBaseVisualManager::D rawStatusBarProgress | 現在の Windows テーマを使用して、ステータス バー コントロール ( CMFCStatusBar クラス) に進行状況バーを描画します。 |
CMFCBaseVisualManager::FillReBarPane | 現在の Windows テーマを使用して、鉄筋コントロールの背景を塗りつぶします。 |
CMFCBaseVisualManager::GetStandardWindowsTheme | 現在の Windows テーマを取得します。 |
保護メソッド
名前 | 説明 |
---|---|
CMFCBaseVisualManager::CleanUpThemes | UpdateSystemColors で取得されたすべてのハンドルのCloseThemeData を呼び出します。 |
CMFCBaseVisualManager::UpdateSystemColors | 呼び出し OpenThemeData 、ウィンドウ、ツール バー、ボタンなど、さまざまなコントロールを描画するためのハンドルを取得します。 |
解説
このクラスのオブジェクトを直接インスタンス化する必要はありません。
これはすべてのビジュアル マネージャーの基本クラスであるため、 CMFCVisualManager::GetInstance を呼び出し、現在の Visual Manager へのポインターを取得し、そのポインターを使用して CMFCBaseVisualManager
メソッドにアクセスできます。 ただし、現在の Windows テーマを使用してコントロールを表示する必要がある場合は、 CMFCVisualManagerWindows
インターフェイスを使用することをお勧めします。
継承階層
要件
Header: afxvisualmanager.h
CMFCBaseVisualManager::CleanUpThemes
UpdateSystemColors
で取得されたすべてのハンドルのCloseThemeData
を呼び出します。
void CleanUpThemes();
解説
内部使用のみ。
CMFCBaseVisualManager::CMFCBaseVisualManager
CMFCBaseVisualManager
オブジェクトを構築して初期化します。
CMFCBaseVisualManager();
CMFCBaseVisualManager::D rawCheckBox
現在の Windows テーマを使用してチェック ボックス コントロールを描画します。
virtual BOOL DrawCheckBox(
CDC* pDC,
CRect rect,
BOOL bHighlighted,
int nState,
BOOL bEnabled,
BOOL bPressed);
);
パラメーター
pDC
[in]デバイス コンテキストへのポインター
rect
[in]チェック ボックスの外接する四角形。
bHighlighted
[in]チェック ボックスを強調表示するかどうかを指定します。
nState
[入力] オフの場合は 0、チェックされた標準の場合は 1、
混合法線の場合は 2。
bEnabled
[in]チェック ボックスを有効にするかどうかを指定します。
bPressed
[in]チェック ボックスを押すかどうかを指定します。
戻り値
テーマ API が有効な場合は TRUE。それ以外の場合は FALSE。
解説
nState の値は、次のチェック ボックス スタイルに対応します。
nState | チェック ボックスのスタイル |
---|---|
0 | CBS_UNCHECKEDNORMAL |
1 | CBS_CHECKEDNORMAL |
2 | CBS_MIXEDNORMAL |
CMFCBaseVisualManager::D rawComboBorder
現在の Windows テーマを使用してコンボ ボックスの境界線を描画します。
virtual BOOL DrawComboBorder(
CDC* pDC,
CRect rect,
BOOL bDisabled,
BOOL bIsDropped,
BOOL bIsHighlighted);
パラメーター
pDC
[入力] デバイス コンテキストへのポインター。
rect
[in]コンボ ボックスの境界線の外接する四角形。
bDisabled
[in]コンボ ボックスの境界線を無効にするかどうかを指定します。
bIsDropped
[in]コンボ ボックスの境界線を下にドロップするかどうかを指定します。
bIsHighlighted
[in]コンボ ボックスの境界線を強調表示するかどうかを指定します。
戻り値
テーマ API が有効な場合は TRUE。それ以外の場合は FALSE。
CMFCBaseVisualManager::D rawComboDropButton
現在の Windows テーマを使用してコンボ ボックスのドロップダウン ボタンを描画します。
virtual BOOL DrawComboDropButton(
CDC* pDC,
CRect rect,
BOOL bDisabled,
BOOL bIsDropped,
BOOL bIsHighlighted);
パラメーター
pDC
[入力] デバイス コンテキストへのポインター。
rect
[in]コンボ ボックスのドロップダウン ボタンの外接する四角形。
bDisabled
[in]コンボ ボックスのドロップダウン ボタンを無効にするかどうかを指定します。
bIsDropped
[in]コンボ ボックスのドロップダウン ボタンをドロップダウンするかどうかを指定します。
bIsHighlighted
[in]コンボ ボックスのドロップダウン ボタンを強調表示するかどうかを指定します。
戻り値
テーマ API が有効な場合は TRUE。それ以外の場合は FALSE。
CMFCBaseVisualManager::D rawPushButton
現在の Windows テーマを使用してプッシュ ボタンを描画します。
virtual BOOL DrawPushButton(
CDC* pDC,
CRect rect,
CMFCButton* pButton,
UINT uiState);
パラメーター
pDC
[入力] デバイス コンテキストへのポインター。
rect
[in]プッシュ ボタンの外接する四角形。
pButton
[in]描画する CMFCButton クラス オブジェクトへのポインター。
uiState
[in] 無視されます。 状態は pButton から取得されます。
戻り値
テーマ API が有効な場合は TRUE。それ以外の場合は FALSE。
CMFCBaseVisualManager::D rawRadioButton
現在の Windows テーマを使用して、ラジオ ボタン コントロールを描画します。
virtual BOOL DrawRadioButton(
CDC* pDC,
CRect rect,
BOOL bHighlighted,
BOOL bChecked,
BOOL bEnabled,
BOOL bPressed);
パラメーター
pDC
[入力] デバイス コンテキストへのポインター。
rect
[in]ラジオ ボタンの外接する四角形。
bHighlighted
[in]ラジオ ボタンを強調表示するかどうかを指定します。
bChecked
[in]ラジオ ボタンをオンにするかどうかを指定します。
bEnabled
[in]ラジオ ボタンを有効にするかどうかを指定します。
bPressed
[in]ラジオ ボタンを押すかどうかを指定します。
戻り値
テーマ API が有効な場合は TRUE。それ以外の場合は FALSE。
CMFCBaseVisualManager::D rawStatusBarProgress
現在の Windows テーマを使用して、ステータス バー コントロール ( CMFCStatusBar クラス) に進行状況バーを描画します。
virtual BOOL DrawStatusBarProgress(
CDC* pDC,
CMFCStatusBar* pStatusBar,
CRect rectProgress,
int nProgressTotal,
int nProgressCurr,
COLORREF clrBar,
COLORREF clrProgressBarDest,
COLORREF clrProgressText,
BOOL bProgressText);
パラメーター
pDC
[入力] デバイス コンテキストへのポインター。
pStatusBar
[in]ステータス バーへのポインター。 この値は無視されます。
rectProgress
[in] pDC 座標の進行状況バーの外接する四角形。
nProgressTotal
[in]進行状況の合計値。
nProgressCurr
[in]現在の進行状況の値。
clrBar
[in]開始色。 CMFCBaseVisualManager
は無視します。 派生クラスは、色のグラデーションに使用できます。
clrProgressBarDest
[in]終了色。 CMFCBaseVisualManager
は無視します。 派生クラスは、色のグラデーションに使用できます。
clrProgressText
[in]進行状況のテキストの色。 CMFCBaseVisualManager
は無視します。 テキストの色は、 afxGlobalData.clrBtnText
によって定義されます。
bProgressText
[in]進行状況テキストを表示するかどうかを指定します。
戻り値
テーマ API が有効な場合は TRUE。それ以外の場合は FALSE。
CMFCBaseVisualManager::FillReBarPane
現在の Windows テーマを使用して、鉄筋コントロールの背景を塗りつぶします。
virtual void FillReBarPane(
CDC* pDC,
CBasePane* pBar,
CRect rectClient);
パラメーター
pDC
[入力] デバイス コンテキストへのポインター。
pBar
[in]背景を描画する必要があるペインへのポインター。
rectClient
[in]塗りつぶす領域の外接する四角形。
戻り値
テーマ API が有効な場合は TRUE。それ以外の場合は FALSE。
CMFCBaseVisualManager::GetStandardWindowsTheme
現在の Windows テーマを取得します。
virtual WinXpTheme GetStandardWindowsTheme();
戻り値
現在選択されている Windows テーマの色。 次のいずれかの列挙値を指定できます。
WinXpTheme_None
- テーマが有効になっていません。WinXpTheme_NonStandard
- 標準以外のテーマが選択されています (テーマは選択されていますが、以下の一覧では選択されていません)。WinXpTheme_Blue
- 青のテーマ (Luna)。WinXpTheme_Olive
- オリーブのテーマ。WinXpTheme_Silver
- シルバー テーマ。
CMFCBaseVisualManager::UpdateSystemColors
呼び出し OpenThemeData
、ウィンドウ、ツール バー、ボタンなど、さまざまなコントロールを描画するためのハンドルを取得します。
void UpdateSystemColors();
解説
内部でのみ使用します。