画面に表示されているものがありJDialog
、条件に基づいてその動き (ある場所から別の場所へのドラッグ) をシミュレートしたいと考えています。これを行う方法はありますか?
1 に答える
3
以下のこのコードを参照してください。私はちょうどそれをテストしました、そして、それはうまくいきます。これは単なる概念実証です。
private void startDialog() {
final JDialog d = new JDialog(this, "Test", true);
d.getContentPane().add(new JLabel("Something"));
d.setBounds(100, 100, 400, 300);
Thread t = new Thread(new Runnable() {
public void run() {
for (int i = 0; i < 50; i++) {
SwingUtilities.invokeLater(new Runnable() {
public void run() {
Point p = d.getLocation();
d.setLocation(p.x + 10, p.y + 10);
}
});
try {
Thread.sleep(100);
} catch (InterruptedException e) {
// ignore
}
}
}
});
t.start();
d.setVisible(true);
}
コードを自分で改善できます。
Timer
通常の代わりに a を使用するThread
- 睡眠時間と場所のジャンプなどを微調整する
任意の Swing アプリケーションからこのメソッドを呼び出すだけで機能します。
于 2012-08-24T20:55:16.663 に答える