2012-11-27 36 views

回答

0

就我個人而言,我會考慮製作一個擴展你的JButton並覆蓋paint方法的類。隨着時間的推移,使用JTimer來更改「setComposite()」(在graphics2D類中找到)方法的值。

在Java改變複合材料的實施例:

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

g2d.setComposite(newComposite); 
+1

你也可以看看[這裏](http://stackoverflow.com/questions/13203415/how-to-add-fade-fade-out-effects-to-a-jlabel/13203744#13203744 )示例 – MadProgrammer

+0

謝謝。我得到了答案。 – Sam

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); 
       } 
      }); 
     } 
    }