CMFCButton
クラス
このクラスは CMFCButton
、ボタン テキストの CButton
配置、ボタン テキストと画像の組み合わせ、カーソルの選択、ツール ヒントの指定などの機能をクラスに追加します。
構文
class CMFCButton : public CButton
メンバー
パブリック コンストラクター
名前 | 説明 |
---|---|
CMFCButton::CMFCButton |
既定のコンストラクターです。 |
CMFCButton::~CMFCButton |
デストラクターです。 |
パブリック メソッド
名前 | 説明 |
---|---|
CMFCButton::CleanUp |
内部変数をリセットし、イメージ、ビットマップ、アイコンなどの割り当てられたリソースを解放します。 |
CMFCButton::CreateObject |
このクラス型の動的インスタンスを作成するために、フレームワークで使用されます。 |
CMFCButton::DrawItem |
所有者が描画したボタンの視覚的な側面が変更されたときにフレームワークによって呼び出されます。 ( CButton::DrawItem をオーバーライドします)。 |
CMFCButton::EnableFullTextTooltip |
大きなツールヒント ウィンドウにツールヒントのフルテキストを表示するか、小さなツールヒント ウィンドウでテキストの切り捨てバージョンを表示するかを指定します。 |
CMFCButton::EnableMenuFont |
ボタンテキストフォントがアプリケーションメニューフォントと同じかどうかを指定します。 |
CMFCButton::EnableWindowsTheming |
ボタンの境界線のスタイルが現在の Windows テーマに対応するかどうかを指定します。 |
CMFCButton::GetThisClass |
このクラス型に関連付けられているオブジェクトへのポインターを CRuntimeClass 取得するためにフレームワークによって使用されます。 |
CMFCButton::GetToolTipCtrl |
基になるツールヒント コントロールへの参照を返します。 |
CMFCButton::IsAutoCheck |
チェック ボックスまたはラジオ ボタンが自動ボタンかどうかを示します。 |
CMFCButton::IsAutorepeatCommandMode |
ボタンが自動繰り返しモードに設定されているかどうかを示します。 |
CMFCButton::IsCheckBox |
ボタンが チェック ボックス ボタンかどうかを示します。 |
CMFCButton::IsChecked |
現在のボタンがチェックされているかどうかを示します。 |
CMFCButton::IsHighlighted |
ボタンが強調表示されているかどうかを示します。 |
CMFCButton::IsPressed |
ボタンを押して強調表示するかどうかを示します。 |
CMFCButton::IsPushed |
ボタンがプッシュされるかどうかを示します。 |
CMFCButton::IsRadioButton |
ボタンがラジオ ボタンかどうかを示します。 |
CMFCButton::IsWindowsThemingEnabled |
ボタンの境界線のスタイルが現在の Windows テーマに対応しているかどうかを示します。 |
CMFCButton::OnDrawParentBackground |
ボタンの親の背景を指定した領域に描画します。 (オーバーライド AFX_GLOBAL_DATA::DrawParentBackground |
CMFCButton::PreTranslateMessage |
Windows 関数と DispatchMessage Windows 関数にディスパッチされる前に、ウィンドウ メッセージをTranslateMessage 変換します。 ( CWnd::PreTranslateMessage をオーバーライドします)。 |
CMFCButton::SetAutorepeatMode |
ボタンを自動繰り返しモードに設定します。 |
CMFCButton::SetCheckedImage |
チェックボタンのイメージを設定します。 |
CMFCButton::SetFaceColor |
ボタンテキストの背景色を設定します。 |
CMFCButton::SetImage |
ボタンのイメージを設定します。 |
CMFCButton::SetMouseCursor |
カーソルイメージを設定します。 |
CMFCButton::SetMouseCursorHand |
カーソルを手の画像に設定します。 |
CMFCButton::SetStdImage |
オブジェクトを CMenuImages 使用してボタンイメージを設定します。 |
CMFCButton::SetTextColor |
選択されていないボタンのボタン テキストの色を設定します。 |
CMFCButton::SetTextHotColor |
選択されているボタンのボタン テキストの色を設定します。 |
CMFCButton::SetTooltip |
ツールヒントをボタンに関連付けます。 |
CMFCButton::SizeToContent |
ボタンのテキストと画像を含むボタンのサイズを変更します。 |
保護メソッド
名前 | 説明 |
---|---|
CMFCButton::OnDraw |
ボタンを描画するためにフレームワークによって呼び出されます。 |
CMFCButton::OnDrawBorder |
ボタンの境界線を描画するためにフレームワークによって呼び出されます。 |
CMFCButton::OnDrawFocusRect |
ボタンのフォーカス四角形を描画するためにフレームワークによって呼び出されます。 |
CMFCButton::OnDrawText |
ボタンテキストを描画するためにフレームワークによって呼び出されます。 |
CMFCButton::OnFillBackground |
ボタン テキストの背景を描画するためにフレームワークによって呼び出されます。 |
CMFCButton::SelectFont |
指定したデバイス コンテキストに関連付けられているフォントを取得します。 |
データ メンバー
名前 | 説明 |
---|---|
CMFCButton::m_nAlignStyle |
ボタン テキストの配置を指定します。 |
CMFCButton::m_bDontUseWinXPTheme |
Windows XP テーマを使用するかどうかを指定します。 |
CMFCButton::m_bDrawFocus |
ボタンの周囲にフォーカスの四角形を描画するかどうかを示します。 |
CMFCButton::m_nFlatStyle |
ボタンのスタイル (罫線なし、フラット、セミフラット、3D など) を指定します。 |
CMFCButton::m_bGrayDisabled |
TRUE の場合、無効になっているボタンを灰色表示で描画できます。 |
CMFCButton::m_bHighlightChecked |
カーソルをポイントしたときに、BS_CHECKB (キロバイト)OX スタイルのボタンを強調表示するかどうかを示します。 |
CMFCButton::m_bResponseOnButtonDown |
ボタンダウン イベントに応答するかどうかを示します。 |
CMFCButton::m_bRightImage |
ボタンの右側に画像を表示するかどうかを示します。 |
CMFCButton::m_bTopImage |
イメージがボタンの上にあるかどうかを示します。 |
CMFCButton::m_bTransparent |
ボタンが透明かどうかを示します。 |
CMFCButton::m_bWasDblClk |
最後のクリック イベントがダブルクリックされたかどうかを示します。 |
解説
その他の種類のボタンは、ハイパーリンクをCMFCButton
サポートするクラスや、カラー ピッカー ダイアログ ボックスをCMFCColorButton
サポートするクラスなどCMFCURLLinkButton
、クラスから派生します。
オブジェクトのCMFCButton
スタイルは、 flat
semi-flat
no border
3D
ボタンのテキストは、ボタンの左、上、または中央に配置できます。 実行時に、ボタンにテキスト、画像、またはテキストと画像を表示するかどうかを制御できます。 また、カーソルがボタンの上に置いたときに特定のカーソルイメージを表示することもできます。
コード内で直接、または MFC クラス ウィザード ツールとダイアログ ボックス テンプレートを使用して、ボタン コントロールを作成します。 ボタン コントロールを直接作成する場合は、アプリケーションに変数を追加 CMFCButton
し、オブジェクトのコンストラクターと Create
メソッドを CMFCButton
呼び出します。 MFC クラス ウィザードを使用する場合は、アプリケーションに変数を追加CButton
し、変数の型を次の値にCButton
CMFCButton
変更します。
ダイアログ ボックス アプリケーションで通知メッセージを処理するには、各通知のメッセージ マップ エントリとイベント ハンドラーを追加します。 オブジェクトによって CMFCButton
送信される通知は、オブジェクトによって送信されたものと CButton
同じです。
例
次の例では、クラスのさまざまなメソッドを使用してボタンのプロパティを構成する方法を CMFCButton
示します。 この例は、新しいコントロールのサンプルの一部です。
CMFCButton m_Button;
// int m_iImage
// IDB_BTN1_32, IDB_BTN1_HOT_32, IDB_BTN1, IDB_BTN1_HOT are int macros that are #define.
if (m_iImage == 1)
{
m_Button.SetImage((HBITMAP)NULL);
}
else
{
m_Button.SetImage(IDB_BTN1_32, IDB_BTN1_HOT_32);
}
// int m_iImage
if (m_iImage == 0)
{
m_Button.SetWindowText(_T(""));
}
else
{
m_Button.SetWindowText(_T("Button"));
}
// Resize the button.
m_Button.SizeToContent();
m_Button.EnableFullTextTooltip(true);
// Use the application menu font at the button text font.
m_Button.EnableMenuFont();
// Use the current Windows theme to draw the button borders.
m_Button.EnableWindowsTheming(true);
// Set the button to auto-repeat mode.
m_Button.SetAutorepeatMode();
// Set the background color for the button text.
m_Button.SetFaceColor(RGB(255,0,0),true);
m_Button.SetTextColor(RGB(0,0,255));
// Set the tooltip of the button.
m_Button.SetTooltip(_T("this is a button!"));
継承階層
必要条件
ヘッダー:afxbutton.h
CMFCButton::CleanUp
内部変数をリセットし、イメージ、ビットマップ、アイコンなどの割り当てられたリソースを解放します。
virtual void CleanUp();
CMFCButton::EnableFullTextTooltip
大きなツールヒント ウィンドウにツールヒントのフルテキストを表示するか、小さなツールヒント ウィンドウでテキストの切り捨てバージョンを表示するかを指定します。
void EnableFullTextTooltip(BOOL bOn=TRUE);
パラメーター
bOn
[in] TRUE
すべてのテキストを表示するには、 FALSE
をクリックすると、切り捨てられたテキストが表示されます。
解説
CMFCButton::EnableMenuFont
ボタンテキストフォントがアプリケーションメニューフォントと同じかどうかを指定します。
void EnableMenuFont(
BOOL bOn=TRUE,
BOOL bRedraw=TRUE);
パラメーター
bOn
[in] TRUE
ボタンテキストフォントとしてアプリケーションメニューフォントを使用する場合。 FALSE
をクリックしてシステム フォントを使用します。 既定値は、TRUE
です。
bRedraw
[in] TRUE
画面をすぐに再描画する。それ以外の場合は . FALSE
既定値は、TRUE
です。
解説
このメソッドを使用してボタンテキストのフォントを指定しない場合は、メソッドでフォントを CWnd::SetFont
指定できます。 フォントをまったく指定しない場合、フレームワークによって既定のフォントが設定されます。
CMFCButton::EnableWindowsTheming
ボタンの境界線のスタイルが現在の Windows テーマに対応するかどうかを指定します。
static void EnableWindowsTheming(BOOL bEnable = TRUE);
パラメーター
bEnable
[in] TRUE
現在の Windows テーマを使用してボタンの境界線を描画する場合。 FALSE
Windows テーマを使用しない場合は 。 既定値は、TRUE
です。
解説
このメソッドは、クラスから派生したアプリケーション内のすべてのボタンに影響します CMFCButton
。
CMFCButton::GetToolTipCtrl
基になるツールヒント コントロールへの参照を返します。
CToolTipCtrl& GetToolTipCtrl();
戻り値
基になるツールヒント コントロールへの参照。
解説
CMFCButton::IsAutoCheck
チェック ボックスまたはラジオ ボタンが自動ボタンかどうかを示します。
BOOL IsAutoCheck() const;
戻り値
TRUE
ボタンにスタイルBS_AUTOCHECKBOX
BS_AUTORADIOBUTTON
がある場合は 〗、FALSE
それ以外の場合は .
解説
CMFCButton::IsAutorepeatCommandMode
ボタンが自動繰り返しモードに設定されているかどうかを示します。
BOOL IsAutorepeatCommandMode() const;
戻り値
TRUE
ボタンが自動繰り返しモードに設定されている場合。それ以外の場合は . FALSE
解説
このメソッドを CMFCButton::SetAutorepeatMode
使用して、ボタンを自動繰り返しモードに設定します。
CMFCButton::IsCheckBox
ボタンが チェック ボックス ボタンかどうかを示します。
BOOL IsCheckBox() const;
戻り値
TRUE
ボタンにいずれかの BS_CHECKBOX
スタイル BS_AUTOCHECKBOX
がある場合は 〗。 FALSE
それ以外の場合は 。
解説
CMFCButton::IsChecked
現在のボタンがチェックされているかどうかを示します。
BOOL IsChecked() const;
戻り値
TRUE
現在のボタンがチェックされている場合は。FALSE
それ以外の場合は。
解説
フレームワークでは、さまざまな種類のボタンがチェックされていることを示すために、さまざまな方法を使用します。 たとえば、ラジオ ボタンはドットが含まれている場合にチェックされます。チェック ボックス チェックX
は、
CMFCButton::IsHighlighted
ボタンが強調表示されているかどうかを示します。
BOOL IsHighlighted() const;
戻り値
TRUE
ボタンが強調表示されている場合。それ以外の場合は . FALSE
解説
ボタンの上にマウス ポインターを置くと、ボタンが強調表示されます。
CMFCButton::IsPressed
ボタンを押して強調表示するかどうかを示します。
BOOL IsPressed() const;
戻り値
TRUE
ボタンが押されている場合。それ以外の場合は . FALSE
解説
CMFCButton::IsPushed
ボタンがプッシュされるかどうかを示します。
BOOL IsPushed() const;
戻り値
TRUE
ボタンが押された場合は〘。それ以外の場合は . FALSE
解説
CMFCButton::IsRadioButton
ボタンがラジオ ボタンかどうかを示します。
BOOL IsRadioButton() const;
戻り値
TRUE
ボタンのスタイルが次の場合は 〗、BS_AUTORADIOBUTTON
それ以外の場合FALSE
は BS_RADIOBUTTON
.
解説
CMFCButton::IsWindowsThemingEnabled
ボタンの境界線のスタイルが現在の Windows テーマに対応しているかどうかを示します。
static BOOL IsWindowsThemingEnabled();
戻り値
TRUE
ボタンの境界線のスタイルが現在の Windows テーマに対応する場合。それ以外の場合は . FALSE
CMFCButton::m_bDontUseWinXPTheme
ボタンを描画するときに Windows XP テーマを使用するかどうかを指定します。
BOOL m_bDontUseWinXPTheme;
CMFCButton::m_bDrawFocus
ボタンの周囲にフォーカスの四角形を描画するかどうかを示します。
BOOL m_bDrawFocus;
解説
ボタンがフォーカスを m_bDrawFocus
受け取った場合に、フレームワークがボタンのテキストと画像の周囲にフォーカス四角形を描画することを指定するように TRUE
メンバーを設定します。
コンストラクターは CMFCButton
、このメンバーを初期化します TRUE
。
CMFCButton::m_bGrayDisabled
の場合 TRUE
、無効になっているボタンを灰色表示で描画できます。
BOOL m_bGrayDisabled;
CMFCButton::m_bHighlightChecked
カーソルをポイントしたときに -style ボタンを強調表示 BS_CHECKBOX
するかどうかを示します。
BOOL m_bHighlightChecked;
解説
メンバーを m_bHighlightChecked
設定して TRUE
、マウスポインターを置いたときにフレームワークが -style ボタンを強調表示 BS_CHECKBOX
するように指定します。
CMFCButton::m_bResponseOnButtonDown
ボタンダウン イベントに応答するかどうかを示します。
BOOL m_bResponseOnButtonDown;
CMFCButton::m_bRightImage
ボタンの右側に画像を表示するかどうかを示します。
BOOL m_bRightImage;
CMFCButton::m_bTopImage](#m_bTopImage)
イメージがボタンの上にあるかどうかを示します。
BOOL m_bTopImage;
解説
フレームワークがボタンの m_bRightImage
テキスト ラベルの右側にボタンのイメージを表示するように指定するようにメンバー TRUE
を設定します。
CMFCButton::m_bTransparent
ボタンが透明かどうかを示します。
BOOL m_bTransparent;
解説
フレームワークがボタンをm_bTransparent
TRUE
透明にすることを指定するようにメンバーを設定します。 コンストラクターは CMFCButton
、このメンバーを初期化します FALSE
。
CMFCButton::m_nAlignStyle
ボタン テキストの配置を指定します。
AlignStyle m_nAlignStyle;
解説
ボタン テキストの配置を指定するには、次 CMFCButton::AlignStyle
のいずれかの列挙値を使用します。
Value | 説明 |
---|---|
ALIGN_CENTER |
(既定値)ボタンのテキストをボタンの中央に揃えます。 |
ALIGN_LEFT |
ボタンのテキストをボタンの左側に揃えます。 |
ALIGN_RIGHT |
ボタンのテキストをボタンの右側に揃えます。 |
コンストラクターは CMFCButton
、このメンバーを初期化します ALIGN_CENTER
。
CMFCButton::m_bWasDblClk
](#m_bWasDblClk)|
最後のクリック イベントがダブルクリックされたかどうかを示します。|
BOOL m_bWasDblClk;
CMFCButton::m_nFlatStyle
ボタンのスタイル (罫線なし、フラット、セミフラット、3D など) を指定します。
FlatStyle m_nFlatStyle;
解説
次の表に、ボタンの CMFCButton::m_nFlatStyle
外観を指定する列挙値を示します。
Value | 説明 |
---|---|
BUTTONSTYLE_3D |
(既定値)ボタンは、高い 3 次元の側面を持っているように見えます。 ボタンがクリックされると、ボタンが深いインデントに押されたように見えます。 |
BUTTONSTYLE_FLAT |
マウスがボタンの上に一時停止しない場合、ボタンは 2 次元のように見え、側面が上がっていません。 ボタンの上にマウスを置くと、ボタンの端が低く、3 次元に表示されます。 ボタンをクリックすると、ボタンが浅いインデントに押されたように見えます。 |
BUTTONSTYLE_SEMIFLAT |
ボタンは、低い 3 次元の側面を持っているように見えます。 ボタンがクリックされると、ボタンが深いインデントに押されたように見えます。 |
BUTTONSTYLE_NOBORDERS |
ボタンの側面は上がらず、常に 2 次元で表示されます。 ボタンをクリックしてもインデントが押されていないように見えます。 |
コンストラクターは CMFCButton
、このメンバーを初期化します BUTTONSTYLE_3D
。
例
次の例では、クラスのメンバー変数の値を m_nFlatStyle
設定する方法を CMFCButton
示します。 この例は、新しいコントロールの サンプルの一部です。
CMFCButton m_Button;
//int m_iBorderStyle
switch (m_iBorderStyle)
{
case 0:
m_Button.m_nFlatStyle = CMFCButton::BUTTONSTYLE_FLAT;
break;
case 1:
m_Button.m_nFlatStyle = CMFCButton::BUTTONSTYLE_SEMIFLAT;
break;
case 2:
m_Button.m_nFlatStyle = CMFCButton::BUTTONSTYLE_3D;
}
CMFCButton::OnDraw
ボタンを描画するためにフレームワークによって呼び出されます。
virtual void OnDraw(
CDC* pDC,
const CRect& rect,
UINT uiState);
パラメーター
pDC
[入力] デバイス コンテキストへのポインター。
rect
[in]ボタンを囲む四角形への参照。
uiState
[in]現在のボタンの状態。 詳細については、「構造」トピックのメンバーをDRAWITEMSTRUCT
参照してくださいitemState
。
解説
独自のコードを使用してボタンを描画するには、このメソッドをオーバーライドします。
CMFCButton::OnDrawBorder
ボタンの境界線を描画するためにフレームワークによって呼び出されます。
virtual void OnDrawBorder(
CDC* pDC,
CRect& rectClient,
UINT uiState);
パラメーター
pDC
[入力] デバイス コンテキストへのポインター。
rectClient
[in]ボタンを囲む四角形への参照。
uiState
[in]現在のボタンの状態。 詳細については、「構造」トピックのメンバーをDRAWITEMSTRUCT
参照してくださいitemState
。
解説
独自のコードを使用して境界線を描画するには、このメソッドをオーバーライドします。
CMFCButton::OnDrawFocusRect
ボタンのフォーカス四角形を描画するためにフレームワークによって呼び出されます。
virtual void OnDrawFocusRect(
CDC* pDC,
const CRect& rectClient);
パラメーター
pDC
[入力] デバイス コンテキストへのポインター。
rectClient
[in]ボタンを囲む四角形への参照。
解説
独自のコードを使用してフォーカスの四角形を描画するには、このメソッドをオーバーライドします。
CMFCButton::OnDrawText
ボタンテキストを描画するためにフレームワークによって呼び出されます。
virtual void OnDrawText(
CDC* pDC,
const CRect& rect,
const CString& strText,
UINT uiDTFlags,
UINT uiState);
パラメーター
pDC
[入力] デバイス コンテキストへのポインター。
rect
[in]ボタンを囲む四角形への参照。
strText
[in]描画するテキスト。
uiDTFlags
[in]テキストの書式設定方法を指定するフラグ。 詳細については、メソッドのパラメーターをnFormat
CDC::DrawText
参照してください。
uiState
[in] 予約されています。
解説
独自のコードを使用してボタン テキストを描画するには、このメソッドをオーバーライドします。
CMFCButton::OnFillBackground
ボタン テキストの背景を描画するためにフレームワークによって呼び出されます。
virtual void OnFillBackground(
CDC* pDC,
const CRect& rectClient);
パラメーター
pDC
[入力] デバイス コンテキストへのポインター。
rectClient
[in]ボタンを囲む四角形への参照。
解説
独自のコードを使用してボタンの背景を描画するには、このメソッドをオーバーライドします。
CMFCButton::SelectFont
指定したデバイス コンテキストに関連付けられているフォントを取得します。
virtual CFont* SelectFont(CDC* pDC);
パラメーター
pDC
[入力] デバイス コンテキストへのポインター。
戻り値
独自のコードを使用してフォントを取得するには、このメソッドをオーバーライドします。
解説
CMFCButton::SetAutorepeatMode
ボタンを自動繰り返しモードに設定します。
void SetAutorepeatMode(int nTimeDelay=500);
パラメーター
nTimeDelay
[in]親ウィンドウに送信されるメッセージ間の間隔を指定する負でない番号。 間隔はミリ秒単位で測定され、既定値は 500 ミリ秒です。 メッセージの自動繰り返しモードを無効にするには、0 を指定します。
解説
このメソッドにより、ボタンが離されるか、パラメーターが 0 に設定されるまで、ボタンは常に親ウィンドウにメッセージをnTimeDelay
送信WM_COMMAND
します。
CMFCButton::SetCheckedImage
チェックボタンのイメージを設定します。
void SetCheckedImage(
HICON hIcon,
BOOL bAutoDestroy=TRUE,
HICON hIconHot=NULL,
HICON hIconDisabled=NULL,
BOOL bAlphaBlend=FALSE);
void SetCheckedImage(
HBITMAP hBitmap,
BOOL bAutoDestroy=TRUE,
HBITMAP hBitmapHot=NULL,
BOOL bMap3dColors=TRUE,
HBITMAP hBitmapDisabled=NULL);
void SetCheckedImage(
UINT uiBmpResId,
UINT uiBmpHotResId=0,
UINT uiBmpDsblResID=0);
パラメーター
hIcon
[in]新しいイメージのビットマップとマスクを含むアイコンを処理します。
bAutoDestroy
[in] TRUE
ビットマップ リソースを自動的に破棄するように指定する場合。それ以外の場合は . FALSE
既定値は、TRUE
です。
hIconHot
[in]選択した状態の画像を含むアイコンを処理します。
hBitmap
[in]選択されていない状態のイメージを含むビットマップを処理します。
hBitmapHot
[in]選択した状態のイメージを含むビットマップを処理します。
bMap3dColors
[in]ボタンの背景の透明な色を指定します。つまり、ボタンの面です。 TRUE
色値 RGB(192, 192, 192)を使用する場合。 FALSE
で定義された色の値を使用する AFX_GLOBAL_DATA::clrBtnFace
場合は 、
uiBmpResId
[in]選択されていないイメージのリソース ID。
uiBmpHotResId
[in]選択したイメージのリソース ID。
hIconDisabled
[in]無効なイメージのアイコンを処理します。
hBitmapDisabled
[in]無効なイメージを含むビットマップを処理します。
uiBmpDsblResID
[in]無効になっているビットマップのリソース ID。
bAlphaBlend
[in] TRUE
アルファチャネルを使用する32ビットイメージのみを使用する場合。 FALSE
は、アルファ チャネル イメージのみを使用しない場合に使用します。 既定値は、FALSE
です。
解説
CMFCButton::SetFaceColor
ボタンテキストの背景色を設定します。
void SetFaceColor(
COLORREF crFace,
BOOL bRedraw=TRUE);
パラメーター
crFace
[in]RGB カラー値。
bRedraw
[in] TRUE
画面をすぐに再描画する場合。それ以外の場合は . FALSE
解説
このメソッドを使用して、ボタンの背景 (面) の新しい塗りつぶしの色を定義します。 メンバー変数TRUE
が CMFCButton::m_bTransparent
.
CMFCButton::SetImage
ボタンのイメージを設定します。
void SetImage(
HICON hIcon,
BOOL bAutoDestroy=TRUE,
HICON hIconHot=NULL,
HICON hIconDisabled=NULL,
BOOL bAlphaBlend=FALSE);
void SetImage(
HBITMAP hBitmap,
BOOL bAutoDestroy=TRUE,
HBITMAP hBitmapHot=NULL,
BOOL bMap3dColors=TRUE,
HBITMAP hBitmapDisabled=NULL);
void SetImage(
UINT uiBmpResId,
UINT uiBmpHotResId=0,
UINT uiBmpDsblResID=0);
パラメーター
hIcon
[in]新しいイメージのビットマップとマスクを含むアイコンを処理します。
bAutoDestroy
[in] TRUE
ビットマップ リソースを自動的に破棄するように指定する場合。それ以外の場合は . FALSE
既定値は、TRUE
です。
hIconHot
[in]選択した状態の画像を含むアイコンを処理します。
hBitmap
[in]選択されていない状態のイメージを含むビットマップを処理します。
hBitmapHot
[in]選択した状態のイメージを含むビットマップを処理します。
uiBmpResId
[in]選択されていないイメージのリソース ID。
uiBmpHotResId
[in]選択したイメージのリソース ID。
bMap3dColors
[in]ボタンの背景の透明な色を指定します。つまり、ボタンの面です。 TRUE
色値 RGB(192, 192, 192)を使用する場合。 FALSE
で定義された色の値を使用する AFX_GLOBAL_DATA::clrBtnFace
場合は 、
hIconDisabled
[in]無効なイメージのアイコンを処理します。
hBitmapDisabled
[in]無効なイメージを含むビットマップを処理します。
uiBmpDsblResID
[in]無効になっているビットマップのリソース ID。
bAlphaBlend
[in] TRUE
アルファチャネルを使用する32ビットイメージのみを使用する場合。 FALSE
は、アルファ チャネル イメージのみを使用しない場合に使用します。 既定値は、FALSE
です。
解説
例
次の例では、クラスでさまざまなバージョンのメソッドを使用する SetImage
方法を CMFCButton
示します。 この例は、新しいコントロールのサンプルの一部です。
CMFCButton m_Button;
// int m_iImage
// IDB_BTN1_32, IDB_BTN1_HOT_32, IDB_BTN1, IDB_BTN1_HOT are int macros that are #define.
if (m_iImage == 1)
{
m_Button.SetImage((HBITMAP)NULL);
}
else
{
m_Button.SetImage(IDB_BTN1_32, IDB_BTN1_HOT_32);
}
CMFCButton::SetMouseCursor
カーソルイメージを設定します。
void SetMouseCursor(HCURSOR hcursor);
パラメーター
hcursor
[in]カーソルのハンドル。
解説
このメソッドを使用して、手のカーソルなどのカーソルイメージをボタンに関連付けます。 カーソルはアプリケーション リソースから読み込まれます。
例
次の例では、クラスでメソッドを使用する SetMouseCursor
方法を CMFCButton
示します。 この例は、New Controls サンプルのコードの一部です。
CMFCButton m_Button;
// int m_iCursor
void CPage1::OnSetCursor()
{
UpdateData();
switch (m_iCursor)
{
case 0:
m_Button.SetMouseCursor(NULL);
break;
case 1:
m_Button.SetMouseCursorHand();
break;
case 2:
m_Button.SetMouseCursor(AfxGetApp()->LoadCursor(IDC_CURSOR));
break;
}
}
CMFCButton::SetMouseCursorHand
カーソルを手の画像に設定します。
void SetMouseCursorHand();
解説
このメソッドを使用して、手のカーソルイメージをボタンに関連付けます。 カーソルはアプリケーション リソースから読み込まれます。
CMFCButton::SetStdImage
オブジェクトを CMenuImages
使用してボタンイメージを設定します。
void SetStdImage(
CMenuImages::IMAGES_IDS id,
CMenuImages::IMAGE_STATE state=CMenuImages::ImageBlack,
CMenuImages::IMAGES_IDS idDisabled=(CMenuImages::IMAGES_IDS)0);
パラメーター
id
[in]列挙体で定義されているボタン イメージ識別子の CMenuImage::IMAGES_IDS
1 つ。 画像の値は、矢印、ピン、ラジオ ボタンなどの画像を指定します。
state
[in]列挙体で定義されているボタン イメージ状態識別子の CMenuImages::IMAGE_STATE
1 つ。 イメージの状態では、ボタンの色 (黒、灰色、薄い灰色、白、濃い灰色など) を指定します。 既定値は CMenuImages::ImageBlack
です。
idDisabled
[in]列挙体で定義されているボタン イメージ識別子の CMenuImage::IMAGES_IDS
1 つ。 この画像は、ボタンが無効になっていることを示しています。 既定値は、最初のボタンイメージ ( CMenuImages::IdArrowDown
) です。
解説
CMFCButton::SetTextColor
選択されていないボタンのボタン テキストの色を設定します。
void SetTextColor(COLORREF clrText);
パラメーター
clrText
[in]RGB カラー値。
解説
CMFCButton::SetTextHotColor
選択されているボタンのボタン テキストの色を設定します。
void SetTextHotColor(COLORREF clrTextHot);
パラメーター
clrTextHot
[in]RGB カラー値。
解説
CMFCButton::SetTooltip
ツールヒントをボタンに関連付けます。
void SetTooltip(LPCTSTR lpszToolTipText);
パラメーター
lpszToolTipText
[in]ヒントのテキストへのポインター。 ツールヒントを無効にするように指定 NULL
します。
解説
CMFCButton::SizeToContent
ボタンのテキストと画像を含むボタンのサイズを変更します。
virtual CSize SizeToContent(BOOL bCalcOnly=FALSE);
パラメーター
bCalcOnly
[in] TRUE
ボタンの新しいサイズを計算しますが、変更することはできません。 FALSE
ボタンのサイズを変更します。 既定値は、FALSE
です。
戻り値
ボタンの CSize
新しいサイズを含むオブジェクト。
解説
既定では、このメソッドは、10 ピクセルの水平余白と 5 ピクセルの垂直余白を含む新しいサイズを計算します。
関連項目
階層図
クラス
CMFCLinkCtrl
クラス
CMFCColorButton
クラス
CMFCMenuButton
クラス
フィードバック
https://aka.ms/ContentUserFeedback」を参照してください。
以下は間もなく提供いたします。2024 年を通じて、コンテンツのフィードバック メカニズムとして GitHub の issue を段階的に廃止し、新しいフィードバック システムに置き換えます。 詳細については、「フィードバックの送信と表示