- 25 名前:デフォルトの名無しさん [2006/11/23(木) 20:29:23 ]
- void CTestDlg::OnButton2()
{ m_button1.ShowWindow(SW_HIDE); } これにより、ボタン2を押すとボタン1は非表示状態になるのですが、 void CTestDlg::OnButton3() { m_button1.SetRedraw(FALSE); m_button1.SetRedraw(TRUE); m_button1.Invalidate(); } としてボタン3を押すと、ボタン1が再び出てきてしまいます。 Invalidateだけだと出てきません。 SetRedrawって、SW_HIDEも勝手に戻してしまうものなのでしょうか? これから作ろうとしているものは、 SetRedraw(FALSE)〜SetRedraw(TRUE)の間でいろいろ内部情報の更新をして、 その結果に合わせて表示状態も切り替えようとしているのですが、 非表示にしても、最後のSetRedraw(TRUE)で表示状態に戻ってしまいます…。
|

|