ダイアログの表示(WindowsAPI)

ダイアログを表示する・・・。

今回は、モーダルで・・・。

f:id:BG1:20160529045043p:plain

リソースを追加する・・・。

f:id:BG1:20160529045135p:plain

まずはMenuで、

f:id:BG1:20160529045324p:plain

これまで通りの項目を挿入・・・。

f:id:BG1:20160529045655p:plain

新たにヘルプ(&H)というメインメニューのアイテムを作って、

f:id:BG1:20160529045804p:plain

バージョン情報(&A)というサブアイテム・・・。

f:id:BG1:20160529050049p:plain

IDをID_APP_ABOUTに・・・。

f:id:BG1:20160529050217p:plain

続いて、Dialogを追加・・・。

f:id:BG1:20160529050430p:plain

最初はこんな感じ・・・。

f:id:BG1:20160529050551p:plain

キャンセルは削除して、OKを右に・・・。

f:id:BG1:20160529050842p:plain

ツールボックスからStatic Textを選択・・・。

f:id:BG1:20160529051143p:plain

こんな感じで配置・・・。

f:id:BG1:20160529051253p:plain

IDD_DIALOG1のFontSizeを選択・・・。

f:id:BG1:20160529052439p:plain

サイズを10に変更・・・。

f:id:BG1:20160529052920p:plain

フォントやダイアログの大きさが変わるのでちょっとサイズ調整しつつ、"スタティック"も"Dialog"に変更・・・。

f:id:BG1:20160529053019p:plain

IDもIDD_DIALOG1から、

f:id:BG1:20160529053049p:plain

IDD_ABOUT_DIALOGに・・・。

ダイアログの処理をするDialogProcを宣言・・・。

新たなメニューアイテムIDのID_APP_ABOUTが選択された時、DialogBoxでIDD_ABOUT_DIALOGを表示・・・。
第4引数にDialogProcを渡すと、DialogProcがダイアログのプロシージャになる・・・。

ダイアログの初期化時、WM_INITDIALOGはTRUEを返すだけ・・・。

OKボタンが押された時、EndDialogでダイアログを終了・・・。

閉じるボタンのWM_CLOSEでも、EndDialog・・・。

f:id:BG1:20160529054834p:plain

実行して、

f:id:BG1:20160529054918p:plain

バージョン情報を選択・・・。

f:id:BG1:20160529055000p:plain

Dialogが表示される・・・。

OKでも閉じるボタンでもダイアログは終了する・・・。

https://github.com/bg1bgst333/Test/blob/master/dialog/dialog/winapi/src/Dialog/Dialog/Dialog.cpp
https://github.com/bg1bgst333/Test/blob/master/dialog/dialog/winapi/src/Dialog/Dialog/resource.h
https://github.com/bg1bgst333/Test/blob/master/dialog/dialog/winapi/src/Dialog/Dialog/Dialog.rc