質問: vc++でモードレスダイアログ 突然で申し訳ありません。 vc++でアプリケーションを作成しているのですが、 メインフレームからモードレスダイアログを表示するまではよかったのですが、モードレスダイアログボックスの裏に隠れたメインフレームをどうやっても表に表示できません。リソースファイルでの設定がいろいろあるようで、やってみたのですが、うまくいきません。 どなたか知っている方がいらっしゃいましたら、無知な私にご教授願えないでしょうか。 宜しくお願いいたします。 因みにダイアログのプロパティは 「タイトルバー」と「システムメニュー」をチェックしてあるだけです。。。。。 お願いします。
回答: メインフレームが表に表示できないのではなく、作成したモードレスダイアログボックスがデフォルトで「最上位に表示」になっているのではないですか? cdialogクラスを使っているなら、メインフレームのリソースをいじるのは間違っています。 cdialogならcreateindirect()を使っていると思いますが、第一引数のlpdialogtemplateからws_ex_topmostをはずします。 詳しくはwindows sdkのdlgextemplate構造体を参照してください。(オンラインマニュアルは英語かもしれませんが)