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

    隨筆檔案

    相冊

    朋友們的鏈接

    經常能找到我的地方..

    搜索

    最新評論

    閱讀排行榜

    評論排行榜

    主站蜘蛛池模板: 国产a级特黄的片子视频免费| 中国一级全黄的免费观看| 在免费jizzjizz在线播| 亚洲av无码专区国产乱码在线观看| 人禽伦免费交视频播放| 亚洲国产一级在线观看| 国产精品极品美女自在线观看免费| 免费大黄网站在线观看| 日本一区二区在线免费观看| 狠狠亚洲婷婷综合色香五月排名 | 亚洲大香伊人蕉在人依线| 免费A级毛片无码A∨| 亚洲美女人黄网成人女| 成人免费福利视频| 亚洲国产精品无码中文lv| 国产区卡一卡二卡三乱码免费 | 男女午夜24式免费视频| 久久亚洲精品无码aⅴ大香| 免费AA片少妇人AA片直播| 亚洲精品一卡2卡3卡四卡乱码| 国产美女精品视频免费观看| 日韩免费在线中文字幕| 亚洲成色在线综合网站| 亚洲免费在线视频播放| 亚洲av无码成人影院一区| 区久久AAA片69亚洲| 嫖丰满老熟妇AAAA片免费看| 美美女高清毛片视频黄的一免费| 亚洲熟妇无码乱子AV电影| 1000部夫妻午夜免费| 国产成人人综合亚洲欧美丁香花 | 久久国产乱子伦精品免费不卡| 亚洲小视频在线播放| 免费一级一片一毛片| 久久99免费视频| 亚洲人成网站18禁止| 亚洲理论电影在线观看| 中国在线观看免费高清完整版| 一级做a爰片性色毛片免费网站| 亚洲最大福利视频网站| 亚洲福利精品电影在线观看|