0
私はある仕事をするスレッドを持っています。また、数秒待ってプログレスバーを更新するjavax.swing.Timerがあります。Javaが終了するまでタイマーを待つ
今私の問題は、私はタイマーが終了したときに
jTextArea1.append("continue ..\n");
のように、さらにコードを実行すること、です。コード全体がスレッド内で実行されています。 誰かが私にそれをどうやってヒントを与えることができますか?ここで
jTextArea1.append(String.format("%d seconds to wait ..\n", wait));
System.out.println("-------------------------------------------------------------");
waiting = true;
final Timer timer = new Timer(wait*1000, new ActionListener() {
public void actionPerformed(ActionEvent e) {
jProgressBar1.setValue(jProgressBar1.getValue() + 1);
if (jProgressBar1.getValue() == 100) {
synchronized (this) {
waiting = false;
this.notify();
}
((Timer) e.getSource()).stop();
}
}
});
synchronized (timer) {
timer.start();
while(waiting)
timer.wait();
}
System.out.println(waiting + " " + new GregorianCalendar().getTimeInMillis());
jTextArea1.append("continue...\n");
ご回答ありがとうございます。しかし、私の問題は、私は62秒待ってからプログレスバーを表示して、最初からやり直していくことをやめたいということです。私はそれをどのように実装しますか? –