06/08/26 01:47:58
________________
|a | | |
| | | |
|____|______|____|
|_b______________|
上記のようにCFramWindowのクライアント領域をCSplitterWindowで
分割して、スプリッタのクライアントにダイアログを貼り付けた
アプリを作っています。
そのときに、フレームウインドウをリサイズして大きくすると、aの
ダイアログのフレームがbに描画されてゴミが残ってしまう現象が
起こって困っております。
はみ出すフレームはリサイズで大きくしたサイズ分のようで、
最後にはaのダイアログもきちんとスプリッタの中におさまって
います。
いろいろ試した結果、bのダイアログのメッセージマップにMSG_WM_PAINT
を追加するとゴミが残らないようになりました。
OnPaintの中は空でなければならず、
CPaintDC dc(m_hWnd);
を追加すると、再びゴミが残るようになります。
それでとりあえずゴミは残らないようになったのですが、何が起こって
いるのか分からず、また対処が正しいとは思えないので、納得できません
でした。
まだATL/WTLを使い始めたばかりで、多分自分のコードに問題があるのだろう
とは思うのですが、どこが悪いのかよく分かりません。
なにかお分かりになることがありましたらアドバイスをおねがいします。