7

Swing を使用するアプリケーションに取り組んでいます。ユーザーが作業するためのメイン GUI の作成に成功しました。ただし、ユーザーが自分の設定を変更できるようにしたいと思います。設定ウィンドウを作成するにはどうすればよいですか? 「設定」と呼ばれる新しい JFrame を使用することがこれを処理する最良の方法でしょうか、それとも 2 つ目の JFrame よりも優れた方法がありますか?

(注: JFrame の設定は、終了時にメイン GUI を閉じず、DISPOSE メソッドを使用します)

これを、メモリの消費量を最小限に抑えながら、アプリケーションの専門的な外観を維持する方法で処理したいと考えています。

4

3 に答える 3

5

CardLayoutを検討しましたか? http://docs.oracle.com/javase/tutorial/uiswing/layout/card.html

個人的には、別のダイアログを使用することは、構成設定に関して少し古いと思います。私はタブ付きレイアウトを好みます。これは、上部にタブバーが付いたカードレイアウトです。

アプリケーションをほぼ最上位のカードレイアウトに簡単にラップし、メニューアクションを追加して構成カードに切り替えることができます。[確認]または[キャンセル]ボタンをメインのアプリケーションカードに戻します。

結局のところ、それは本当にユーザーが好むものについてですが、それがより良い解決策でなくても、多くのユーザーが知っていることを好むかもしれないことを覚えておいてください。バランスを見つける必要があります。実装がうまくいかない場合、最終的には、問題へのアプローチを他のアプリケーションで使用することを望んでいます。

この完璧な例は、複数のウィンドウではなく、タブブラウジングです。個人的には、タブの閲覧に慣れてきた今、複数ウィンドウの閲覧に戻ることは想像できませんが、ある時点では、複数のウィンドウが町で唯一のゲームでした。

結局、間違った選択をしたことがわかった場合は、どちらのソリューションでも簡単に実装できるように、コードを十分にクリーンに保ってください。構成画面が単なるJPanel(またはJPanelにラップされている)である限り、それを行うのはそれほど難しいことではありません。

于 2012-04-11T18:42:18.127 に答える
1

これはまさにこの種のことを行うクラスです:

http://tus.svn.sourceforge.net/viewvc/tus/tjacobs/ui/dialogs/ParamDialog.java?view=log

于 2012-04-11T18:25:46.247 に答える
0

ApplicationListener インターフェイス、特にそのインターフェイスの「handlePreferences」メソッドを確認する必要があります。

于 2012-04-11T18:28:08.870 に答える