SetForegroundWindowが上手く機能しません。 – プログラミング – Home

通知
すべてクリア

[解決済] SetForegroundWindowが上手く機能しません。


クリリン
 クリリン
(@クリリン)
ゲスト
結合: 23年前
投稿: 175
Topic starter  

いつも、お世話になっています。
環境は Win2000(SP2), VC6(SP5), MFC です。

機能説明
・3つのダイアログがあります。
 (データ入力(参照)…モード切替があります。、検索条件入力、検索結果一覧)
・コマンドラインを使って、最初に表示するダイアログを切り替えています。
 (データ入力か検索条件入力)
・流れは二通りあります。
 1.データ入力->検索条件入力->検索結果一覧->データ入力(参照)
 2.検索条件入力->検索結果一覧->データ入力(参照)
・検索結果一覧はモードレスです。検索条件入力からクリエイトされ、検索条件入力のダイアロ
グが消えたらいっしょに消します。
・検索結果一覧のコマンドに検索条件入力をアクティブにする機能があります。

質問ですが、基本的な流れは問題ありません。ただ、2の場合、検索条件入力がアクティブには
なっているのですが、「前景」ならず、1の場合は正常に「前景」になります。
デバッグで「SetForegroundWindow」の戻り値を調べたら「TRUE」になっていました。
どうしたら、「前景」状態になるのでしょうか?

ちなみに、検索結果一覧を表示する時に検索条件入力のウィンドウハンドルを渡しています。

みなさま、よろしくお願いします。


引用未解決
トピックタグ
クリリン
 クリリン
(@クリリン)
ゲスト
結合: 23年前
投稿: 175
Topic starter  

自己レスです。
出来ました。

原因は、Create(IDD_DIALOG1, NULL)の「NULL」に問題がありました。
Createをヘルプで見ると、
「引数が、NULL のときは、作られるダイアログの親ウィンドウは、メイン アプリケーション
ウィンドウになります。」
と書いて有りました。
解決方法は、
Create(IDD_DIALOG1, GetForegroundWindow())
です。

お騒がせしました。


返信引用

返信する

投稿者名

投稿者メールアドレス

タイトル *

プレビュー 0リビジョン 保存しました
共有:
タイトルとURLをコピーしました