0

あるウィンドウを別のウィンドウと一緒に移動するにはどうすればよいですか? つまり、JFrame がドラッグされているときに、JDialog が JFrame に追従するようにします。JFrame が (+5, +20) だけ移動する場合、JDialog も同じように移動する必要があります。

ComponentListeners を使用してみましたが、メインの JFrame をドラッグしているときに JDialog ウィンドウがジャンプする原因となるチャンクでのみドラッグ イベントを受け取ります。MouseListeners を使用してみましたが、JFrame の実際のフレームでイベントを検出する方法がわかりません。

4

3 に答える 3

1

JFrame でドラッグ イベントを監視する代わりに、ComponentListener.componentMoved イベントを使用してみてください。

于 2009-04-09T06:51:15.310 に答える
0

コンポーネント リスナー メソッドは完全に機能します。私はこのようなことをしました:

Point p = this.getLocation();
p.x += this.getWidth() + 10;
this.getOwner().setLocation(p);

「10」は、現在のウィンドウ (JDialog) とその右側にあるその所有者の間のスペースです。

于 2012-01-27T08:15:53.033 に答える