0

少し遅れて、JButtonがどのように表示されるか[フェードイン]を教えてください.Netbeansを使用しています-すべてのコンポーネントのドラッグアンドドロップの概念。

4

2 に答える 2

0

上記の問題が機能するコードを見つけました。

  import java.awt.Color;
  import java.util.Timer;
  import java.util.TimerTask;

  public class delay extends javax.swing.JFrame {
      Timer timer;

      public delay(int seconds) {
          initComponents();
          jButton1.setVisible(false);
          getContentPane().setBackground(Color.red);
          timer = new Timer();
          timer.schedule(new RemindTask(), seconds*1000);
      }

      class RemindTask extends TimerTask{
          public void run() {
              jButton1.setVisible(true);
              timer.cancel();        
          }
      }

      public static void main(String args[]) {
          java.awt.EventQueue.invokeLater(new Runnable() {

              public void run() {
                  new delay(5).setVisible(true);
              }
          });
      }
  }
于 2012-11-27T11:33:09.847 に答える
0

個人的には、JButton を拡張し、ペイント メソッドをオーバーライドするクラスを作成することを検討します。両方の JTimer を使用して、"setComposite()" (graphics2D クラスにある) メソッドの値を時間とともに変更します。

Java でコンポジットを変更する例:

AlphaComposite newComposite = 
    AlphaComposite.getInstance(AlphaComposite.SRC_OVER, .5f)

g2d.setComposite(newComposite);
于 2012-11-27T08:58:30.240 に答える