こんにちはゲストさん。会員登録(無料)して質問・回答してみよう!

締切り済みの質問

VC++でモードレスダイアログ

突然で申し訳ありません。
VC++でアプリケーションを作成しているのですが、
メインフレームからモードレスダイアログを表示するまではよかったのですが、モードレスダイアログボックスの裏に隠れたメインフレームをどうやっても表に表示できません。リソースファイルでの設定がいろいろあるようで、やってみたのですが、うまくいきません。
どなたか知っている方がいらっしゃいましたら、無知な私にご教授願えないでしょうか。
宜しくお願いいたします。
因みにダイアログのプロパティは
「タイトルバー」と「システムメニュー」をチェックしてあるだけです。。。。。
お願いします。

投稿日時 - 2000-11-06 14:02:54

QNo.12293

PSD

すぐに回答ほしいです

このQ&Aは役に立ちましたか?

20人が「このQ&Aが役に立った」と投票しています

回答(2)

ANo.2

メインフレームが表に表示できないのではなく、作成したモードレスダイアログボックスがデフォルトで「最上位に表示」になっているのではないですか?
Cdialogクラスを使っているなら、メインフレームのリソースをいじるのは間違っています。

CDialogならCreateIndirect()を使っていると思いますが、第一引数のlpDialogTemplateからWS_EX_TOPMOSTをはずします。

詳しくはWindows SDKのDLGEXTEMPLATE構造体を参照してください。(オンラインマニュアルは英語かもしれませんが)

投稿日時 - 2000-11-06 15:05:34

ANo.1

クリックしたら、表に出すというやつですよね。
OnLButtonClickにMoveWindowでも追加して
あげたらどうでしょう。

MFCなのかAPIなのかがないとこれ以上書くことは
難しいですよ。

ではでは☆

投稿日時 - 2000-11-06 14:29:33

補足

説明不足ですいません。
アプリケーションはMFCです。
これ、実はやってみたのですが、
うまくいきませんでした。(やり方が悪いんだと思います。)
でもこれ、ほかの用途にも使えそうですね。
ちょっと勉強になりました。
ありがとうございます。

投稿日時 - 2000-11-08 10:45:30

あなたにオススメの質問