印刷中画面みたいなプログラムを作成中なのですが、印刷中画面が開かれている間その他の画面は使用できないようにするにはどうしたらいいんでしょうか?
フォーム自体のEnabledをFalseにしても閉じるボタン【×】は押せてしまい。エラーが発生してしまいます。
よろしくお願いします。
印刷中の画面だけのプログラムなのでしょうか?
だとすれば納得できるのですが・・・・
印刷中の画面と他の画面が同一のプロジェクトにいるとなると
通常EnabledをFalseにするとコントロールボックスのxは押せないはずなのですが
処理通知だけのDLLを作成しているのであれば
呼び出し画面のハンドルを渡して上げて処理通知画面を
手前に制御するとか出来ますよね。
コントロールボックスを殺してしまうってのは駄目ですか?
印刷中画面を最大化して最前面にしたら?
うしろが隠されるのがいやなら、
プログレスバーのまわり以外は
リージョンで透過にすればいいし。
そういえば、ただのモーダルでもいいような
気がするけど、それじゃだめ?
ご意見ありがとうございます。
モーダルだと、印刷中画面以外で処理を行っているのでそちらの処理が停止してしまいます。
えーっと…。
おやウィンドウの×ボタンの処理を見て(QueryUnloadイベントでわかる)
印刷中なら無条件で追い出したらどうでしょうか?
いろいろご意見ありがとうございました。
QueryUnloadイベントで×ボタンを押されたら閉じないようにしました。
ツイート | ![]() |