あなたはのThread.sleepを(使用することができます)
あなたはSwingのユーザーインターフェイススレッドからUIを更新しようとしているので、あなたが持つ問題がある可能性があります。これはSwingコンポーネント用に予約されているスレッドなので、UIへのクイックアップデート以外は何もしないでください。
public void prog() {
SwingUtilities.invokeLater(new Runnable() {
@Override
public void run() {
label.setText("1");
}
}
try {
Thread.sleep(5000);
} catch(Exception e) { }
SwingUtilities.invokeLater(new Runnable() {
@Override
public void run() {
label.setText("2");
}
}
}
public static void main(String[] args) {
label = new JLabel("0");
prog();
}
JLabel label
UIは、コンポーネントの相互作用がActionListenerに実装される必要があるため、応答し続ける必要があります。しかし、待機中に他の作業を実行したい場合や、ActionListenerのactionPerfomed()メソッドにその機能が含まれている場合は、新しいスレッドを5秒間寝かしてからUIを更新することができます。また、UIをブロックすることなくスリープする代わりに、計算に5秒かかる計算を実行することもできます。コードは次のようになります。
(new Thread(new Runnable() {
@Override
public void run() {
try {
Thread.sleep(5000);
} catch (Exception e) { }
SwingUtilities.invokeLater(new Runnable() {
@Override
public void run() {
label.setText("2");
}
}
}
}).start();
あなたがスレッドを試みた何気圧、おそらくしようとしているかを示すあまりに – dave
'Timer'オブジェクト –
https://docs.oracle.comを使用します/javase/tutorial/uiswing/misc/timer.html –