私のエラーメッセージをJLabelで一時的に表示してから、テキストを ""に戻したいと思っています。しかし代わりに、メッセージの設定をスキップするように見えます。私はコードを踏んで、それがテキストを設定していることを発見しましたが、何らかの理由で表示されません。私はrepaint()メソッドを試してみましたが、まだ何もしていません。どんな助けでも大歓迎です。JLabelテキストを1秒間表示するにはどうすればいいですか?
は、ここで私が持っているものだ:私はあなたがイベントディスパッチスレッド上でこのメソッドを呼び出していることを仮定してい
public void displayError(String msg){
int ctr = 0;
while(ctr<2){
try {
lblError.setText(msg);
lblError.repaint();
Thread.sleep(500);
} catch (Exception e) {}
ctr++;
}
lblError.setText("");
}
tryブロックを離れるときに実際に発生しています。特に例外を飲み込んでいるからです。テキストを同じ値に2回設定したいと思う理由がわかりません。 – Thor84no
[Swing Timersの使い方](http://download.oracle.com/javase/tutorial/uiswing/misc/timer.html)を参照してください。 – trashgod
私がやりたいことを示すために例外処理を取り出しました。 whileループは、テスト目的のためのものでした。 Thread.sleep()の前と後の両方で変更したいと思っていました。そのメソッドのミリ秒数をテストする限り、これは私と弟のための非常に小さなアプリケーションであることに留意してください。そのようなものが間違ってしまうと、それはあまり有害ではありません。ゲームやアニメーションを作ったのですが、私はあなたのことを間違いなく見ています。入力いただきありがとうございます。 – user967870