コマンドとコントロール通知のハンドラ
更新 : 2007 年 11 月
コマンドとコントロール通知メッセージには、既定のハンドラがありません。したがって、これらの種類のメッセージについては、ハンドラの名前付け規則が唯一の制約です。コマンドまたはコントロール通知をハンドラに対応付けるときは、[プロパティ] ウィンドウによって、コマンド ID またはコントロール通知コードに基づく名前が提案されます。提案された名前をそのまま使うことも、一部変更することも、まったく別の名前にすることもできます。
名前付け規則では、どちらの種類のハンドラでも、ユーザー インターフェイス オブジェクトがわかる名前を付けることになっています。たとえば、[編集] メニューの [切り取り] コマンドのハンドラは次のような名前にします。
afx_msg void OnEditCut();
[編集] メニューの [切り取り] コマンドはほとんどのアプリケーションで使われるため、コマンド ID として ID_EDIT_CUT がフレームワークによって既に定義されています。定義済みのコマンド ID の一覧については、ファイル AFXRES.H を参照してください。詳細については、「標準コマンド」を参照してください。
規約では、"My Button" というボタンからの BN_CLICKED 通知メッセージ ハンドラは、次のような名前を付けることになっています。
afx_msg void OnBnClickedMybutton();
このコマンドは、アプリケーション固有のユーザー インターフェイス オブジェクトに相当するため、コマンド ID として IDC_MY_BUTTON を付けることもできます。
これらの種類のメッセージは、共に引数を持たず、戻り値も返しません。