ページ 11

2つのWindowを同時に使いたい

Posted: 2006年10月09日(月) 06:37
by Sato
前回はお世話になりました。再度質問させていただけたらと思います。

1つ目のWindowでボタンをクリックすると
2つ目のWindowに結果が表示されるプログラムを考えています。

この際、2つ目のWindowが表示されていても、
1つ目のWindowを操作したいと考えています。

DialogBox(hMainWnd,"MainWnd2")を使うことで、
2つ目のWindowを開くことができます。

でも、このままだと1つ目のWindowに制御を戻すことができないので、
抜け出すコードが必要になるのですが…。

この方式では、2つのWindowを同時に動かすことができません。
ご存知の方、ご教授お願いします。

バージョンは4.24.00です。

Re: 2つのWindowを同時に使いたい

Posted: 2006年10月09日(月) 10:44
by 7
> DialogBox(hMainWnd,"MainWnd2")を使うことで、
> 2つ目のWindowを開くことができます。
>
> でも、このままだと1つ目のWindowに制御を戻すことができないので、
DialogBox関数はモーダルダイアログボックスを作るので、指定された親ウィンドウを無効にして制御を戻せないようにするものです。そうしたくない場合は、CreateDialog関数を使ってモードレスダイアログボックスを作ればオッケーです。

あと、2つ目のウィンドウのタイプをモードレスダイアログに変更する必要があります。
「プロパティ」→「タイプ」→「モードレス ダイアログ」

追記。
どうでもいい突っ込みなんですけど、MainWnd2っていう識別名はちょっと...?
自分は特に思い付かないときはSubWndにしています。

Re: 2つのWindowを同時に使いたい

Posted: 2006年10月10日(火) 12:39
by Sato
ありがとうございます。解決しました。

非常に便利に使えています。