ボタン (Windows コントロール)
このセクションでは、ボタン コントロールで使用されるプログラミング要素について説明します。 ボタンは、ユーザーがクリックすることでアプリケーションに入力を提供できるコントロールです。
概要
トピック | 内容 |
---|---|
ボタン メッセージ | このトピックでは、ボタンで使用されるメッセージについて説明します。 |
Button の状態 | このセクションでは、ボタンの選択によって状態がどのように変わるかと、アプリケーションでどのように応答するべきかについて説明します。 |
ボタンの種類 | このトピックでは、さまざまな種類のボタンについて説明します。 |
ボタンの使用 | このセクションでは、ボタンに関連付けられている特定のタスクを実行する方法について説明します。 |
関数
トピック | 内容 |
---|---|
CheckDlgButton | ボタン コントロールのチェック状態を変更します。 |
CheckRadioButton | グループ内の指定されたラジオ ボタンにチェック マークを追加 (チェック) し、グループ内の他のすべてのラジオ ボタンからチェック マークを削除 (クリア) します。 |
IsDlgButtonChecked | IsDlgButtonChecked 関数は、ボタン コントロールがチェックされているかどうか、または 3 状態ボタン コントロールがチェックされているのか、チェック解除されているのか、または未確定なのかを判別します。 |
マクロ
トピック | 内容 |
---|---|
Button_Enable | ボタンを有効または無効にします。 |
Button_GetCheck | ラジオ ボタンまたはチェック ボックスのチェック状態を取得します。 このマクロを使用するか、BM_GETCHECK メッセージを明示的に送信します。 |
Button_GetIdealSize | 画像リストが存在する場合に、テキストと画像に最適なボタンのサイズを取得します。 このマクロを使用するか、BCM_GETIDEALSIZE メッセージを明示的に送信します。 |
Button_GetImageList | ボタン コントロールに対して設定された画像リストを記述する BUTTON_IMAGELIST 構造体を取得します。 このマクロを使用するか、BCM_GETIMAGELIST メッセージを明示的に送信します。 |
Button_GetNote | コマンド リンク ボタンに関連付けられているメモのテキストを取得します。 このマクロを使用するか、BCM_GETNOTE メッセージを明示的に送信します。 |
Button_GetNoteLength | コマンド リンクの説明に表示されるメモ テキストの長さを取得します。 このマクロを使用するか、BCM_GETNOTELENGTH メッセージを明示的に送信します。 |
Button_GetSplitInfo | 指定された分割ボタン コントロールの情報を取得します。 このマクロを使用するか、BCM_GETSPLITINFO メッセージを明示的に送信します。 |
Button_GetState | ラジオ ボタンまたはチェック ボックスのチェック状態を取得します。 このマクロを使用するか、BM_GETSTATE メッセージを明示的に送信します。 |
Button_GetText | ボタンのテキストを取得します。 |
Button_GetTextLength | ボタンのテキスト内の文字数を取得します。 |
Button_GetTextMargin | ボタン コントロールにテキストを描画するために使用する余白を取得します。 このマクロを使用するか、BCM_GETTEXTMARGIN メッセージを明示的に送信します。 |
Button_SetCheck | ラジオ ボタンまたはチェック ボックスのチェック状態を設定します。 このマクロを使用するか、BM_SETCHECK メッセージを明示的に送信します。 |
Button_SetDropDownState | BS_SPLITBUTTON スタイルが設定されている、指定されたボタンのドロップダウン状態を設定します。 このマクロを使用するか、BCM_SETDROPDOWNSTATE メッセージを明示的に送信します。 |
Button_SetElevationRequiredState | 浮き出たアイコンを表示するために、指定されたボタンまたはコマンド リンクのエレベーション必須状態を設定します。 このマクロを使用するか、BCM_SETSHIELD メッセージを明示的に送信します。 |
Button_SetImageList | ボタン コントロールに画像リストを割り当てます。 このマクロを使用するか、BCM_SETIMAGELIST メッセージを明示的に送信します。 |
Button_SetNote | 指定されたコマンド リンク ボタンに関連付けられているメモのテキストを設定します。 このマクロを使用するか、BCM_SETNOTE メッセージを明示的に送信します。 |
Button_SetSplitInfo | 指定された分割ボタン コントロールの情報を設定します。 このマクロを使用するか、BCM_SETSPLITINFO メッセージを明示的に送信します。 |
Button_SetState | ボタンの強調表示状態を設定します。 強調表示状態は、ユーザーがボタンを押したかのようにボタンが強調表示されているかどうかを示します。 このマクロを使用するか、BM_SETSTATE メッセージを明示的に送信します。 |
Button_SetStyle | ボタンのスタイルを設定します。 このマクロを使用するか、BM_SETSTYLE メッセージを明示的に送信します。 |
Button_SetText | ボタンのテキストを設定します。 |
Button_SetTextMargin | ボタン コントロール内のテキストを描画するための余白を設定します。 このマクロを使用するか、BCM_SETTEXTMARGIN メッセージを明示的に送信します。 |
[メッセージ]
トピック | 内容 |
---|---|
BCM_GETIDEALSIZE | 画像リストが存在する場合に、テキストと画像に最適なボタンのサイズを取得します。 このメッセージを明示的に送信するか、Button_GetIdealSize マクロを使用します。 |
BCM_GETIMAGELIST | ボタン コントロールに割り当てられた画像リストを記述する BUTTON_IMAGELIST 構造体を取得します。 このメッセージを明示的に送信するか、Button_GetImageList マクロを使用します。 |
BCM_GETNOTE | コマンド リンク ボタンに関連付けられているメモのテキストを取得します。 このメッセージを明示的に送信するか、Button_GetNote マクロを使用します。 |
BCM_GETNOTELENGTH | コマンド リンク ボタンの説明に表示されるメモ テキストの長さを取得します。 このメッセージを明示的に送信するか、Button_GetNoteLength マクロを使用します。 |
BCM_GETSPLITINFO | 分割ボタン コントロールの情報を取得します。 このメッセージを明示的に送信するか、Button_GetSplitInfo マクロを使用します。 |
BCM_GETTEXTMARGIN | ボタン コントロールにテキストを描画するために使用する余白を取得します。 このメッセージを明示的に送信するか、Button_GetTextMargin マクロを使用します。 |
BCM_SETDROPDOWNSTATE | TBSTYLE_DROPDOWN スタイルが設定されたボタンのドロップダウン状態を設定します。 このメッセージを明示的に送信するか、Button_SetDropDownState マクロを使用します。 |
BCM_SETIMAGELIST | ボタン コントロールに画像リストを割り当てます。 このメッセージを明示的に送信するか、Button_SetImageList マクロを使用します。 |
BCM_SETNOTE | コマンド リンク ボタンに関連付けられているメモのテキストを設定します。 このメッセージを明示的に送信するか、Button_SetNote マクロを使用します。 |
BCM_SETSHIELD | 浮き出たアイコンを表示するために、指定されたボタンまたはコマンド リンクのエレベーション必須状態を設定します。 このメッセージを明示的に送信するか、Button_SetElevationRequiredState マクロを使用します。 |
BCM_SETSPLITINFO | 分割ボタン コントロールの情報を設定します。 このメッセージを明示的に送信するか、Button_SetSplitInfo マクロを使用します。 |
BCM_SETTEXTMARGIN | BCM_SETTEXTMARGIN メッセージは、ボタン コントロール内にテキストを描画するための余白を設定します。 |
BM_CLICK | ボタンをクリックするユーザーをシミュレートします。 このメッセージにより、ボタンは WM_LBUTTONDOWN メッセージと WM_LBUTTONUP メッセージを受信し、ボタンの親ウィンドウは BN_CLICKED 通知コードを受信します。 |
BM_GETCHECK | ラジオ ボタンまたはチェック ボックスのチェック状態を取得します。 このメッセージを明示的に送信するか、Button_GetCheck マクロを使用します。 |
BM_GETIMAGE | ボタンに関連付けられている画像 (アイコンまたはビットマップ) のハンドルを取得します。 |
BM_GETSTATE | ボタンまたはチェック ボックスの状態を取得します。 このメッセージを明示的に送信するか、Button_GetState マクロを使用します。 |
BM_SETCHECK | ラジオ ボタンまたはチェック ボックスのチェック状態を設定します。 このメッセージを明示的に送信するか、Button_SetCheck マクロを使用します。 |
BM_SETDONTCLICK | ボタンがフォーカスを取得したときに、BN_CLICKED メッセージの生成を制御するフラグをラジオ ボタンに設定します。 |
BM_SETIMAGE | 新しい画像 (アイコンまたはビットマップ) をボタンに関連付けます。 |
BM_SETSTATE | ボタンの強調表示状態を設定します。 強調表示状態は、ユーザーがボタンを押したかのようにボタンが強調表示されているかどうかを示します。 このメッセージを明示的に送信するか、Button_SetState マクロを使用します。 |
BM_SETSTYLE | ボタンのスタイルを設定します。 このメッセージは明示的に送信することも、Button_SetStyle マクロを使用することもできます。 |
通知
トピック | 内容 |
---|---|
BCN_DROPDOWN | ユーザーがボタンのドロップダウン矢印をクリックしたときに送信されます。 このコントロールの親ウィンドウは、この通知コードを WM_NOTIFY メッセージの形式で受信します。 |
BCN_HOTITEMCHANGE | マウスがボタン コントロールのクライアント領域に入ったか、または出たことを、ボタン コントロールのオーナーに通知します。 ボタン コントロールは、この通知コードを WM_NOTIFY メッセージの形式で送信します。 |
BN_CLICKED | ユーザーがボタンをクリックしたときに送信されます。 このボタンの親ウィンドウは、WM_COMMAND メッセージを通じて BN_CLICKED 通知コードを受信します。 |
BN_DBLCLK | ユーザーがボタンをダブルクリックしたときに送信されます。 この通知コードは、BS_USERBUTTON、BS_RADIOBUTTON、および BS_OWNERDRAW ボタンに対して自動的に送信されます。 他の種類のボタンは、BS_NOTIFY スタイルが設定されている場合にのみ、BN_DBLCLK を送信します。 このボタンの親ウィンドウは、WM_COMMAND メッセージを通じて BN_DBLCLK 通知コードを受信します。 |
BN_DISABLE | ボタンが無効になったときに送信されます。 注: この通知コードは、バージョン 3.0 より前の 16 ビット版 Windows との互換性のためにのみ提供されています。 アプリケーションでは、このタスクに BS_OWNERDRAW ボタン スタイルと DRAWITEMSTRUCT 構造体を使用する必要があります。 このボタンの親ウィンドウは、WM_COMMAND メッセージを通じて BN_DISABLE 通知コードを受信します。 |
BN_DOUBLECLICKED | ユーザーがボタンをダブルクリックしたときに送信されます。 BS_USERBUTTON、BS_RADIOBUTTON、BS_OWNERDRAW ボタンに関しては、この通知コードは自動的に送信されます。 他の種類のボタンは、BS_NOTIFY スタイルが設定されている場合にのみ、BN_DOUBLECLICKED を送信します。 このボタンの親ウィンドウは、WM_COMMAND メッセージを通じて BN_DOUBLECLICKED 通知コードを受信します。 |
BN_HILITE | ユーザーがボタンを選択したときに送信されます。 注: この通知コードは、バージョン 3.0 より前の 16 ビット版 Windows との互換性のためにのみ提供されています。 アプリケーションでは、このタスクに BS_OWNERDRAW ボタン スタイルと DRAWITEMSTRUCT 構造体を使用する必要があります。 このボタンの親ウィンドウは、WM_COMMAND メッセージを通じて BN_HILITE 通知コードを受信します。 |
BN_KILLFOCUS | ボタンがキーボード フォーカスを失ったときに送信されます。 この通知コードを送信するには、ボタンに BS_NOTIFY スタイルが必要です。 このボタンの親ウィンドウは、WM_COMMAND メッセージを通じて BN_KILLFOCUS 通知コードを受信します。 |
BN_PAINT | ボタンをペイントする必要がある場合に送信されます。 注: この通知コードは、バージョン 3.0 より前の 16 ビット版 Windows との互換性のためにのみ提供されています。 アプリケーションでは、このタスクに BS_OWNERDRAW ボタン スタイルと DRAWITEMSTRUCT 構造体を使用する必要があります。 このボタンの親ウィンドウは、WM_COMMAND メッセージを通じて BN_PAINT 通知コードを受信します。 |
BN_PUSHED | ボタンのプッシュ状態がプッシュ済みに設定されたときに送信されます。 注: この通知コードは、バージョン 3.0 より前の 16 ビット版 Windows との互換性のためにのみ提供されています。 アプリケーションでは、このタスクに BS_OWNERDRAW ボタン スタイルと DRAWITEMSTRUCT 構造体を使用する必要があります。 このボタンの親ウィンドウは、WM_COMMAND メッセージを通じて BN_PUSHED 通知コードを受信します。 |
BN_SETFOCUS | ボタンがキーボード フォーカスを受け取ったときに送信されます。 この通知コードを送信するには、ボタンに BS_NOTIFY スタイルが必要です。 このボタンの親ウィンドウは、WM_COMMAND メッセージを通じて BN_SETFOCUS 通知コードを受信します。 |
BN_UNHILITE | 強調表示をボタンから削除する必要があるときに送信されます。 注: この通知コードは、バージョン 3.0 より前の 16 ビット版 Windows との互換性のためにのみ提供されています。 アプリケーションでは、このタスクに BS_OWNERDRAW ボタン スタイルと DRAWITEMSTRUCT 構造体を使用する必要があります。 このボタンの親ウィンドウは、WM_COMMAND メッセージを通じて BN_UNHILITE 通知コードを受信します。 |
BN_UNPUSHED | ボタンのプッシュ状態がプッシュ解除に設定されたときに送信されます。 注: この通知コードは、バージョン 3.0 より前の 16 ビット版 Windows との互換性のためにのみ提供されています。 アプリケーションでは、このタスクに BS_OWNERDRAW ボタン スタイルと DRAWITEMSTRUCT 構造体を使用する必要があります。 このボタンの親ウィンドウは、WM_COMMAND メッセージを通じて BN_UNPUSHED 通知コードを受信します。 |
NM_CUSTOMDRAW (ボタン) | ボタン コントロールの親ウィンドウに、ボタンでのカスタム描画操作について通知します。 ボタン コントロールは、この通知コードを WM_NOTIFY メッセージの形式で送信します。 |
WM_CTLCOLORBTN | ボタンを描画する前に、ボタンの親ウィンドウに WM_CTLCOLORBTN メッセージが送信されます。 親ウィンドウでは、ボタンのテキストと背景色を変更できます。 ただし、このメッセージを処理する親ウィンドウに応答するのは、所有者描画ボタンのみです。 |
構造体
トピック | 内容 |
---|---|
BUTTON_IMAGELIST | ボタン コントロールで使用されている画像リストに関する情報が含まれます。 |
BUTTON_SPLITINFO | 分割ボタンを定義する情報 (BS_SPLITBUTTON スタイルと BS_DEFSPLITBUTTON スタイル) が含まれます。 BCM_GETSPLITINFO メッセージおよび BCM_SETSPLITINFO メッセージと共に使用されます。 |
NMBCDROPDOWN | BCN_DROPDOWN 通知に関する情報が含まれます。 |
NMBCHOTITEM | ボタン コントロール上でのマウスの動きに関する情報が含まれます。 |
定数
トピック | 内容 |
---|---|
ボタン スタイル | ボタン スタイルの組み合わせを指定します。 BUTTON クラスを使用するボタンを、CreateWindow 関数または CreateWindowEx 関数で作成する場合は、以下の一覧に示したボタン スタイルのいずれかを指定できます。 |