私の最初の質問があまりにも明白であるか、またはひどく研究されていないことを願っています. 以下のコードは、MouseListener の mouseClicked イベントからのものです。境界線の色を緑に変更して、ユーザーがクリックしたものを表示し、スリープタイマーを開始してから、黒に戻すことを望んでいました。残念ながら、変更は Thread.sleep (およびおそらくメソッドのホスト全体) の後にのみ行われます。現在、黒への変更はコメントされており、色の変更は (永続的に) 緑に変わります。コメントがない場合、目に見える色の変化はありません。ここで何が起こっているのですか?
ありがとう
JLabel myLabel = (JLabel) e.getSource();
myLabel.setBorder(BorderFactory.createLineBorder(Color.green));
try {
Thread.sleep(2000);
} catch (InterruptedException e1) {
// TODO Auto-generated catch block
e1.printStackTrace();
}
//myLabel.setBorder(BorderFactory.createLineBorder(Color.black));