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

    隨筆檔案

    相冊

    朋友們的鏈接

    經常能找到我的地方..

    搜索

    最新評論

    閱讀排行榜

    評論排行榜

    主站蜘蛛池模板: 亚洲精品高清无码视频| 在线视频免费观看www动漫 | 1000部免费啪啪十八未年禁止观看 | 四虎一区二区成人免费影院网址| 18禁无遮挡无码网站免费| 亚洲一区在线免费观看| 亚洲高清中文字幕免费| 亚洲五月丁香综合视频| 在线免费观看一级毛片| 午夜亚洲WWW湿好爽| 啊灬啊灬别停啊灬用力啊免费看| 色视频在线观看免费| 337p日本欧洲亚洲大胆裸体艺术| 中国在线观看免费的www| 亚洲AV无码国产丝袜在线观看 | 亚洲熟妇自偷自拍另欧美| 最近最新的免费中文字幕| 亚洲精品无码专区在线| 午夜国产大片免费观看| 国产视频精品免费视频| 亚洲国产人成网站在线电影动漫| 最近中文字幕mv免费高清在线| 性xxxx黑人与亚洲| 国产aa免费视频| 你懂的在线免费观看| 久久精品国产亚洲AV香蕉| 青青久在线视频免费观看| 小说专区亚洲春色校园| 综合亚洲伊人午夜网 | 精品免费久久久久久久| 亚洲欧美精品午睡沙发| 久久精品国产亚洲7777| 久久久久久AV无码免费网站| 亚洲an日韩专区在线| 亚洲国产精品成人网址天堂 | 精品国产免费一区二区三区香蕉| 亚洲成在人线电影天堂色| 国产色婷婷精品免费视频| a级黄色毛片免费播放视频| 亚洲一级大黄大色毛片| 亚洲AV无码不卡在线观看下载|