目次に戻る
モードレスウィンドウの作成
2002/09/29 update.
モードレスウィンドウとは、ウィンドウ自身を閉じなくても他のウィンドウに切り替えることができるウィンドウのことをいいます(フローティングウィンドウともいいます)。
これと対になる、ダイアログを表示している間は他のウィンドウをアクティブにできないダイアログのことを「モーダルダイアログ」といいます。
モードレスウィンドウを生成するには、CPWindowクラスにて「CreateNewWindow」メソッドでウィンドウを生成し、 「CPWindow::ShowWindow」にてウィンドウを表示します。


CPWindow win;

//ウィンドウを生成する
win.Clear();
win.CreateNewWindow("Test Window",120,120,200,130,CP_WINDOW_TOOLWINDOW);

//ウィンドウの表示
win.ShowWindow(CP_TRUE);


「CreateNewWindow」では、ウィンドウのタイトル文字列と表示位置・サイズを指定しています。 第六引数には「CP_WINDOW_TOOLWINDOW」を指定します。
プッシュボタン・スライダーなどをウィンドウに配置するには、この後に各GUI部品のクラスを作成し、「CPWindow::Add」で追加していってください。
「ShowWindow」において、ウィンドウを表示します。
モーダルダイアログ時と違い、この後にすぐに次の処理に移ります。そのため、CPWindowの実体は、スコープから抜けて消えてしまわないように注意してください。
ウィンドウを閉じるか「CPWindow::CloseWindow」が呼ばれると、 このウィンドウが破棄されます。