1

少し前に、アプリケーションで異なる「画面」を切り替える最良の方法は、異なるを設定してからJFrame、最初の画面を破棄して2番目の画面を呼び出すことだと読みました。たとえば、画面Aが拡張さJFrameれて画面Bが拡張JFrameされている場合、次の画面に切り替わるはずのボタンに、次のように記述します。

JButton button = new JButton("show next screen");
button.addActionListener(){
    new ScreenB();
    frameA.dispose(); // assumed that we coded something like frameA = this earlier
}

ここで問題となるのは、2つのフレームの切り替えの間に、たとえば画面Aまたは画面Bのいずれかが1/10であることがわかりますが、これは非常に醜いです。より良い解決策は何でしょうか?画面を拡張し、常に同じContainerように設定しますか?ContentPaneJFrame

4

2 に答える 2

2

WindowListenerFrameA にa を付けてみてください

アクション リスナー コールframeA.dipsose()では、それに設定されたフレームがでイベントDISPOSE_ON_CLOSEをトリガーする限り、 .windowClosedWindowListener

これが発生すると、新しいウィンドウを開くことができます。

于 2012-10-21T01:56:15.353 に答える
-3

次のように、JQuery から別のページで div タグを呼び出すことができます。

$("#myDiveTag").load("http://mySecondPage.aspx");

変数を送信する必要がある場合は、次のようにすることができます。

var myVar = $("#controlThatHasVariable");
$("#myDivTag").load("http://xxx.aspx?myData=" + myVar);

JQuery ロード メソッドの構文は次のとおりです。

load("URI", data, callback)

本質的に、div タグ内の内容を破棄し、呼び出しているページに置き換えます。JQuery は既存のページにページを挿入しているため、すべてのタグは必要ありません。ボタンのonClickイベントでjavascript関数を呼び出し、上に投稿したJqueryを呼び出して、Jqueryで呼び出すもので既存の「画面」を置き換えることができます。

于 2012-10-21T00:14:52.453 に答える