概要

javax.swing.Timerを使って文字列が点滅するJLabelを作成します。

スクリーンショット

BlinkLabel.png

サンプルコード

JLabel label = new JLabel();
Timer timer = new Timer(300, e -> {
  label.setText("".equals(label.getText()) ? "!!!Warning!!!" : "");
});
timer.start();
view all

解説

javax.swing.Timerを使ってJLabelにテキスト文字列と空文字列を交互に設定することで点滅を表現しています。

  • SwingなどのGUIコンポーネントを更新する場合、汎用的で多機能なjava.util.TimerはでなくアクションがEDT(イベント・ディスパッチ・スレッド)で実行されるjavax.swing.Timerを使用する必要がある

参考リンク

コメント