0

私は GUI の初心者で、プログラムを適切に構築する方法を理解したいと思っています。

MVC モデルの GUI を作成しようとしています (すべての制御メソッドは既に実装されています)。特定のボタンで 1 つのウィンドウを閉じて別のウィンドウを開く、3 つの個別のウィンドウが必要だとします。

各ウィンドウに1つずつ、3つのクラスを持つことを考えていました。各ウィンドウは JFrame になります。それは合理的ですか?次に、アクション リスナーを配置する必要があります。それらはどこに行きますか?メインメソッドを使用して、もう1つのクラスが必要だと思います。そのクラスは、コントロールも作成し、コントロールのメソッドを呼び出すことができるクラスであるため、すべてのアクション リスナーを持つこともできます。これは良い方法ですか?

あなたの推奨事項が何であれ、これがコードの観点からどのように見えるかについてのアイデアを提供できますか? コンポーネントを 1 つのフレームにまとめ、そのフレーム内にリスナーを追加して、ボタンが何らかのアクションを実行する方法を知っています。しかし、これが複数のウィンドウでどのように見えるかはわかりません。どんな小さな例でも構いません。ありがとう。

4

2 に答える 2

1

JFrame のスワッピングはユーザーにとって非常に煩わしいため、使用しないことをお勧めします。現在、一連のウィンドウを連続してスローするアプリケーションをいくつ使用していますか? 代わりに、必要に応じてダイアログ ウィンドウを慎重に使用することを検討してください。たとえば、ユーザーがログインなどの特定の方法で対話するまでプログラムを停止する必要がありますが、ほとんどの場合、CardLayout を使用してビュー(多くの場合 JPanels) を交換します。Swing GUI クラスは、この柔軟性をより適切に実現する JPanel の作成に向けて調整する必要があります。

はい、GUI コードの主要な個別部分は個別のクラスにする必要があります。

また、プログラマーが Swing の基本を十分に理解するまでは、Swing アプリケーションの作成に GUI ビルダー ユーティリティを使用しないことを強くお勧めします。

Swing MVC の簡単な例については、こちらをご覧ください: using-a-jfilechooser-with-swing-gui-classes-and-listeners

于 2013-04-06T17:34:44.097 に答える