掲示板システム
ホーム
アクセス解析
カテゴリ
ログアウト
MessageBoxが出ているのにビューに触れてしまうのをなくすには? (ID:71253)
名前
ホームページ(ブログ、Twitterなど)のURL (省略可)
本文
記憶だけで確認してないのですが、gakさんのサンプルコードを元にすると > BViewで出していたダイアログを先に閉じると (α)の [2] でオーナーウィンドウが有効化され、表示しているダイアログが非表示になる。 以降、モーダルループ(a)は終了するようになりますが、 モーダルループ(b)が呼ばれているのでまだ抜けません。 この時点でメインウィンドウは有効化されてしまったため、操作できるようになります。 この場合のウィンドウメッセージはモーダルループ(b)が汲み上げて メインウィンドウのメッセージハンドラを呼ぶような形になっていたと思います。 そのため、この状況でメインウィンドウを操作すると メインメッセージループ (a)のモーダルループ (b)のモーダルループ メインウィンドウのメッセージハンドラ のような形で呼ばれていると思います。 この状況でダイアログを出すとどんどん積もってしまったと思うので、状況はあまりよくありません。 ここでモーダルループ(b)のダイアログを閉じるとモーダルループ(a)も直ちに終了して メインメッセージループに戻ると思われます。 私もgakさんと同意見で本来こういう使い方はするものではないのだと思います。 それでもこの形が必要なら、メインウィンドウのメッセージハンドラに操作中は他のことをしないようにコードを埋めるのが良いかと。
←解決時は質問者本人がここをチェックしてください。
戻る
掲示板システム
Copyright 2020 Takeshi Okamoto All Rights Reserved.