私はこのプログラムで作業していますが、ユーザーはさまざまな種類のデータを求められますが、各種類のデータは前のものに依存します。そこで、最初のクイズを配置する 3 つのフレームを作成しました。ユーザーがボタン (次へ) を押すと同時に最初のウィンドウを閉じると、新しいウィンドウが開きます。私がこれまでに試したことは、ユーザーがそのボタン (次へ) を押したときにブール変数を変更することですが、新しいクラスからこの最後の変数を参照する方法がわかりません。これを解決するためのより良いアプローチを教えてください。
質問する
137 次
3 に答える
1
ウィンドウの開閉は複雑ではなく、ウィンドウ インスタンス (JFrame や JDialog など) を作成し、それらに対してsetVisible(true)
orを呼び出すsetVisible(false)
だけです。しかし、そうは言っても、ウィンドウがユーザーに意地悪に投げられる商用アプリケーションをいくつ使用していますか? ユーザー インターフェイスの悪夢なので、ほとんどありません。代わりに、ユーザーの好みに合わせてビューを CardLayout と交換します。情報をモーダルに取得する必要がある場合は、モーダルに設定された JDialog や JOptionPane などのモーダル ダイアログを使用します。
于 2012-11-23T23:34:52.973 に答える
0
(Next) ボタンの ActionListener メソッドに次の行を入力することで実行できると思います。
dispose();
NewJFrame n = NweJFrame();
n.setVisible(true);
行dispose();
は前のウィンドウを閉じ、NewJFrame という名前の別の新しいウィンドウがこの 2 行で開かれるとします。
NewJFrame n = NweJFrame();
n.setVisible(true);
ただし、その前に、以前のウィンドウ用に記述したように、NewJFrame のコードを記述する必要があります。
于 2012-11-24T00:15:19.320 に答える
0
このコードは半分しか成功していません。
Form2 f2 = new Form2();
if (f2 is Form2)
{
f2.Show();
this.Close();
}
else
{
Form1 f1 = new Form1();
f1.Show();
}
于 2012-11-24T12:15:08.317 に答える