<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    淡入淡出式顯示Swing容器組件(轉)

           轉自:http://blog.sina.com.cn/swingjava
           淡入淡出式彈出Swing Popup窗口,其實對于任何Swing容器組件而言都可以實現這一功能。使用Renderer渲染機制,在容器的paint方法中設置圖形對象的透明屬性,就可以實現容器組件自身和子組件的透明渲染。如果再將這個過程漸變化,就能實現容器顯示淡入淡出效果。

    /**
    * 淡入淡出式顯示內容組件的容器
    *
    * 將GlassBox類作為JFrame的ContentPane就能實現窗口內容顯示的淡入淡出效果。
    * GlassBox更常見的使用方式是作為普通容器,放在應用程序的任何地方。本文附帶的演  * 示程序是將GlassBox是作為普通容器加入JFrame的ContentPane內的。
    *
    @author William Chen
    */

    public class GlassBox extends JComponent implements ActionListener{
    //常數定義
    private static final int ANIMATION_FRAMES=50;
    private static final int ANIMATION_INTERVAL=10;
    //幀索引
    private int frameIndex;
    //時鐘
    private Timer timer;

    /** Creates a new instance of GlassBox */
    public GlassBox() {
    }



    public void paint(Graphics g){
    if(isAnimating()){
    //根據當前幀顯示當前透明度的內容組件
    float alpha=(float)frameIndex/(float)ANIMATION_FRAMES;
    Graphics2D g2d
    =(Graphics2D)g;
    g2d.setComposite(AlphaComposite.getInstance(AlphaComposite.SRC_OVER, alpha));
    //Renderer渲染機制
    super.paint(g2d);
    }
    else{
    //如果是第一次,啟動動畫時鐘
    frameIndex=0;
    timer
    =new Timer(ANIMATION_INTERVAL, this);
    timer.start();
    }

    }

    //判斷當前是否正在進行動畫
    private boolean isAnimating(){
    return timer!=null &amp;&amp; timer.isRunning();
    }

    //關閉時鐘,重新初始化
    private void closeTimer() {
    if(isAnimating()){
    timer.stop();
    frameIndex
    =0;
    timer
    =null;
    }

    }

    //動畫時鐘處理事件
    public void actionPerformed(ActionEvent e) {
    //前進一幀
    frameIndex++;
    if(frameIndex&gt;=ANIMATION_FRAMES)
    //最后一幀,關閉動畫
    closeTimer();
    else//更新當前一幀
    repaint();
    }

    }

    posted on 2007-08-20 20:07 Reg 閱讀(618) 評論(0)  編輯  收藏


    只有注冊用戶登錄后才能發表評論。


    網站導航:
     
    <2007年8月>
    2930311234
    567891011
    12131415161718
    19202122232425
    2627282930311
    2345678

    導航

    統計

    常用鏈接

    留言簿(1)

    隨筆檔案

    相冊

    朋友們的鏈接

    經常能找到我的地方..

    搜索

    最新評論

    閱讀排行榜

    評論排行榜

    主站蜘蛛池模板: 4虎永免费最新永久免费地址| 新最免费影视大全在线播放| 久久免费看黄a级毛片| 亚洲国产精品无码久久久秋霞2| 国产精品成人69XXX免费视频| 国产伦精品一区二区三区免费迷| 亚洲精品色播一区二区| 午夜视频在线在免费| 亚洲AV无码男人的天堂| 国产午夜免费福利红片| 午夜肉伦伦影院久久精品免费看国产一区二区三区 | 亚洲大尺度无码专区尤物| 三根一起会坏掉的好痛免费三级全黄的视频在线观看 | 亚洲成年人免费网站| 在线看免费观看AV深夜影院| 99亚偷拍自图区亚洲| 青青青青青青久久久免费观看| 相泽南亚洲一区二区在线播放| 亚洲成a人片在线播放| 精品国产污污免费网站入口在线 | 亚洲黄色网站视频| 久久久www成人免费毛片| 日韩精品亚洲专区在线影视| 亚洲第一永久AV网站久久精品男人的天堂AV| 免费人成大片在线观看播放电影 | 1000部拍拍拍18免费网站| 亚洲AV成人无码天堂| 国产一区二区视频免费| 国产日韩精品无码区免费专区国产 | 黄页网址在线免费观看| 久久伊人久久亚洲综合| 野花高清在线观看免费3中文| 成人免费网站久久久| 亚洲伊人tv综合网色| 国产成人无码免费视频97| 成人爽a毛片免费| ASS亚洲熟妇毛茸茸PICS| 亚洲视频人成在线播放| 久久成人免费大片| 日韩成人精品日本亚洲| 亚洲精品影院久久久久久|