2011-12-02 3 views
2

共通ファイルダイアログを作成するにはどうすればよいですか?共通ファイルダイアログAPIを使用するアプリケーションモーダルですか?ダイアログは、所有者ウィンドウに関してモーダルになります。私は、ファイルダイアログが開いているときにすべてのプロセスのウィンドウをブロックしたい。私の現在のコードでは、ダイアログの親を除いて、アプリケーションに属するすべてのウィンドウを無効にしています。ダイアログが閉じると、再び有効になります。 Common File Dialogsを使用して、アプリケーションのモダリティをより良く/簡単に実現する方法が必要です。このための標準的な解決策があるかどうか教えてください。アプリケーションモーダルウィンドウのファイルダイアログ

答えて

1

Windowsで私が知っている唯一の方法は、手動での無効化と再有効化です。

Windowsアプリケーションの従来のモデルは、インスタンスごとに1つのトップレベルウィンドウを持つことです。 (MDIアプリケーションを覚えていますか?)もちろん、例外もあります。多くのアプリケーションでは、常にツールパレットのフローティングウィンドウがありました。それにもかかわらず、親機のモデルを無効にすることは、アプリケーションのライオンのために機能し、余分なウィンドウを手動で無効にすることで、多くのウィンドウアプリケーションがあなたがしていることを行うことが可能です。したがって、より一般的な解決策に対する需要はあまりない。

物事を再構築したい場合は、他のすべてのトップレベルウィンドウを所有するマスターウィンドウを持つことができます。また、モーダルウィンドウで親を親として使用しますが、タスクバー、zオーダー、およびモーダルウィンドウの配置に関連する問題。

関連する問題