• category: swing folder: AnimatedToolTip title: JToolTipのアニメーション tags: [JToolTip, JLabel, Animation, Html] author: aterai pubdate: 2007-04-23T09:48:54+09:00 description: JToolTipが表示されたとき、内部のJLabelでアイコンのアニメーションを行う方法をテストします。 image: https://lh5.googleusercontent.com/_9Z4BYR88imo/TQTHpat_rFI/AAAAAAAAARg/fzkRLOHGb7I/s800/AnimatedToolTip.png

概要

JToolTipが表示されたとき、内部のJLabelでアイコンのアニメーションを行う方法をテストします。

サンプルコード

JLabel l3 = new JLabel("Gif Animated ToolTip(html)");
l3.setToolTipText("<html><img src='" + url + "'>Test3</html>");
View in GitHub: Java, Kotlin

解説

    • javax.swing.Timerを使ってアニメーションを行うJLabelを作成し、JToolTipにそのJLabelを追加
    • Timerでアニメーションするアイコンを作成
      JLabel l1 = new JLabel("Timer Animated ToolTip") {
        @Override public JToolTip createToolTip() {
          JToolTip tip = new AnimatedToolTip(new AnimatedLabel(""));
          tip.setComponent(this);
          return tip;
        }
      };
      l1.setToolTipText("dummy");
      
    • Animated GIFファイルをJLabel#setIcon(Icon)で設定し、JToolTipにそのJLabelを追加
      JLabel l2 = new JLabel("Gif Animated ToolTip") {
        @Override public JToolTip createToolTip() {
          JToolTip tip = new AnimatedToolTip(
              new JLabel("", new ImageIcon(url), SwingConstants.LEFT));
          tip.setComponent(this);
          return tip;
        }
      };
      
    • Animated GIFファイルを<html>タグを使ってsetToolTipText(...)メソッドで設定

参考リンク

コメント