背景のクリアを防ぎたいと思って、ClassWizardでWM_ERASEBKGRNDを追加しようとしても、見当たらない。
これはフィルタされているのが原因。
ClassWizard を使わずに手書きしてもいいけど、ClassWizardでも使えるようにできる。
- ClassWizard を開き、「クラス情報」ページを選択する
- 右上の「クラス名」ドロップダウンリストで対象とするダイアログクラスを選択する
- 下の「詳細設定オプション」の中の「メッセージフィルタ」ドロップダウンリストで「ダイアログ」となっているのを「ウィンドウ」に変更する
これで「メッセージマップ」ページにもどれば、「メッセージ」リストで WM_ERASEBKGND も選択できるようになっている。
関数追加したら、他の作業のために忘れないうちにここでメッセージフィルタを「ダイアログ」に戻しておくのが吉。
ネタ元