ウインドウを最前面にするには?

解決


show  2003-03-30 06:23:02  No: 51216

VC、MFCで、あるダイアログウインドを表示するdllを作成しています。そのウインドウは常に最前面表示設定、モーダル型ウインドウ設定、最小化最大化できない設定にしてあります。それをプログラム中から呼び出した時、あるプログラムに限り、1回目の呼び出し時に最前面にならず、最小化状態で現れるのです。2回目以降の呼び出し時には正常に最前面ウインドウで表示されます。色々なプログラムから呼び出して試したのですが、その一つのプログラムだけに限りうまくいきません。そのプログラム自体はソース公開等をして頂けないものなので、解決法ではなくてもいいので、何か原因を思いつく方レスをお願い致します。


ryotaro331  URL  2003-03-31 08:28:10  No: 51217

ウインドウのハンドルを正しく取得できていないのでは?


show  2003-03-31 08:43:43  No: 51218

改めていろいろと試しました。が、そんな感じではないみたいですね。
ですが、レスありがとうございます。
また思いついたらよろしくお願いします。


DotL  2003-04-01 06:18:49  No: 51219

case WM_INITDIALOG:
        ・
        ・
 SetForeGroundWindow(ダイアログのハンドル);
        ・
        ・

でいかないですか?


DotL  2003-04-02 08:51:17  No: 51220

すみません。表記がSDKでした...。
でも要領は同じです。


show  2003-04-03 08:02:59  No: 51221

レス、ありがとうございました。
SetWindowPos()、SetActiveWindow()、SetForeGroundWindow()、BringWindowToTop()、等、いろいろ試していたのですが、
最前面にするというよりも、どう表示するかという問題だったみたいで、
ShowWindow()の指定でうまくいくことができました。
呼び出すアプリケーションが特殊らしくて相性が悪かったみたいです。
みなさん本当にありがとうございました。


show  2003-04-28 00:14:50  No: 51222

解決済みです。ありがとうございました。


※返信する前に利用規約をご確認ください。

※Google reCAPTCHA認証からCloudflare Turnstile認証へ変更しました。






  このエントリーをはてなブックマークに追加