java learnging

          一塊探討JAVA的奧妙吧
          posts - 34, comments - 27, trackbacks - 0, articles - 22
          使用JDIC (Jdesktop Integration Components)類庫做開發(fā)。
          開發(fā)過程中遇到的問題:
          1. 主窗體最小化后隱藏
            當(dāng)發(fā)生窗體最小化事件時把窗體隱藏就可以了
                     /*
                         * 最小化窗體時把窗體給隱藏了 (非 Javadoc)
                         * @see java.awt.event.WindowListener#windowIconified(java.awt.event.WindowEvent)
                         
            */

                        
            public void windowIconified(WindowEvent e){
                            e.getWindow().setVisible(
            false);
                        }

          2. 單擊系統(tǒng)托盤,顯示程序主窗體
            單擊系統(tǒng)托盤但時,把窗體置為可見,并把窗體從任務(wù)欄恢復(fù)
                       // 單擊系統(tǒng)托盤,顯示程序主窗體
                    tray_icon.addActionListener(new ActionListener() {
                        
            public void actionPerformed(ActionEvent e) {
                            buddyFrame.setVisible(
            true);
                            buddyFrame.setState(JFrame.NORMAL);
                        }

                    }
            );

          3. 當(dāng)有消息時在系統(tǒng)托盤圖標(biāo)旁顯示一個消息提示
            (這是一個類似與MSN那種,而不是把鼠標(biāo)放到托盤上顯示的 ToolTip)
            當(dāng)消息到來時在系統(tǒng)托盤圖標(biāo)旁顯示一個彈出菜單即可
             
            public void promptMsg(String msg, String ticket, String url, String para,
                        String userID) 
            {
                    
            // 設(shè)置消息內(nèi)容
                    mViewMsg.setText(msg);

                    
            // 設(shè)置url(點擊 mViewMsg 菜單選項事件的監(jiān)聽程序)
                    mViewMsg.addActionListener(new msgMenuActionListener(msgMenu, url + "?"
                            
            + para));

                    
            // 設(shè)置菜單的大小和位置
                    setMsgMenuSize();

                    msgMenu.setVisible(
            true);
                }


                
            /**
                 * 
                 * 設(shè)置菜單的大小和位置
                 
            */

                
            private void setMsgMenuSize() {
                    Dimension menuSize 
            = new Dimension(200,150);
                    msgMenu.setPopupSize(menuSize);
                    
            int xMenu = tray_icon.getLocationOnScreen().x - menuSize.width + 50;
                    
            int yMenu = tray_icon.getLocationOnScreen().y - menuSize.height;
                    Point menuPoint 
            = new Point(xMenu, yMenu);
                    msgMenu.setLocation(menuPoint);
                    
                }

          Feedback

          # re: 類似與MSN Messenger的系統(tǒng)欄圖標(biāo)和消息提示  回復(fù)  更多評論   

          2005-12-25 18:03 by Lio
          老大,怎么把程序最小化到托盤你倒說啊~
          QQ:382208457

          # re: 類似與MSN Messenger的系統(tǒng)欄圖標(biāo)和消息提示  回復(fù)  更多評論   

          2005-12-26 09:09 by bigseal

          1.在加載程序的時候,new 一個TrayIcon(JDIC)
          2.當(dāng)窗體最小化時把窗體隱藏

          這樣的效果就是把程序最小化到托盤

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


          網(wǎng)站導(dǎo)航:
           
          主站蜘蛛池模板: 木里| 神农架林区| 鄂尔多斯市| 安福县| 仪征市| 资阳市| 普陀区| 淮阳县| 六枝特区| 衡阳市| 广安市| 江华| 昭觉县| 正定县| 香港| 鄂托克旗| 集安市| 峨山| 琼海市| 建湖县| 罗城| 永兴县| 昌图县| 新化县| 五峰| 南澳县| 曲靖市| 灵石县| 南昌县| 德格县| 民丰县| 宝坻区| 阳城县| 洞头县| 石台县| 福州市| 昆山市| 普洱| 疏附县| 盐边县| 桑植县|