2

プログラムを開始すると、メインフレームが作成されます。「検索」ボタンをクリックすると、別の JFrame が表示されます。検索で結果が得られた場合、メインフレームに情報を入力することが目標です。

それはすべて機能しています。しかし、情報を表示できるようにするには、メインフレームを再作成する必要があります。つまり、2 つのメインフレームが開いたままです。

最初はどうやって隠すの?


MainFrame と、検索フォームを含むダイアログが 1 つだけあるとします。

検索ダイアログの [OK] ボタンをクリックすると、いくつかの情報が表示されます。

メインフレーム クラスでは、情報がそこにあることを知っています。

テキストフィールドなどにsettextがあります...そして最後の行に「setvisible(true)」があります。

しかし、彼らは空白のままです!どうして??


誰でもここに例を投稿できますか? お願いします

すべてのオプションを検索するだけですが、解決できません。

4

3 に答える 3

7

Swing アプリケーションは、1 つのJFrame最大数で構成する必要があります。複数の「ウィンドウ」を表示する必要がある場合は、複数JDialogを使用dispose()してダイアログを非表示にすることができます。

CardLayoutまたは、ダイアログが多すぎる代わりに、レイアウト マネージャーとしてを使用できます。

見る:

于 2012-12-26T19:46:01.897 に答える
0

JFrame.setVisible(false)非表示にしたり、再表示したりするために使用しJFrame.setVisible(true)ます。これは、JFrames だけでなく、Swing 内のすべての JComponent で機能します。

于 2012-12-26T19:45:19.700 に答える
0

メソッドの呼び出しで JFrame を非表示にできます。

   setVisible(false);

ただし、モーダル ダイアログを作成するオプションがあるため、代わりに JDialogs の使用を検討することもできます。つまり、ユーザーは検索ダイアログが開いている間だけ対話することができます。

于 2012-12-26T19:45:48.260 に答える