次の方法で共有


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 インターフェイスを使用することをお勧めします。

継承階層

CObject

CMFCBaseVisualManager

要件

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();

解説

内部でのみ使用します。

関連項目

階層図
クラス