MFC写楽斎
もー!ほんとどうしてこうヒューリスティックな作業(ネットサーフィン:死語)を強いられるんでしょうかMFC。
IDE上の操作が大半だったりして、知らないとコーディング以前の問題にキィィィィッ!
非MFCでWindowProc書いちゃったほうが早いしスッキリ(!?)かも知れない。
既にWebで沢山の先人が懇切丁寧に記述されていらっしゃるのですが
せっかくなので自分でメモ。
1. ダイアログにメニューを追加する
→ Menuリソースを追加
Dialogリソースのプロパティ(Menu)で選択して関連付ける
Menuリソース編集状態からDialogクラスを指定してイベントハンドラを追加
2. メニューの表示更新
→ EnableMenuItem()等の後はDrawMenuBar()する。
3. アプリにアクセラレータを追加する
→ Accelaratorリソースの追加
HACCEL型のメンバ変数をDialogクラス等に追加
OnInitDialog等で初期化する。
mhAcc = LoadAccelerators( AfxGetInstanceHandle(), MAKEINTRESOURCE(IDR_ACCELERATOR1) );
4. リストコントロール上で右クリックしてポップアップメニューを表示する
→ ダイアログクラスのプロパティからコントロールに対するイベントを選択(NM_RCLICK)
後はハンドラでMenuを生成したりなんだり。
5. ウィンドウを画面中央に移動
→ CenterWindow()