麻豆小视频在线观看_中文黄色一级片_久久久成人精品_成片免费观看视频大全_午夜精品久久久久久久99热浪潮_成人一区二区三区四区

首頁(yè) > 編程 > Java > 正文

基于java開(kāi)發(fā)之系統(tǒng)托盤(pán)的應(yīng)用

2019-11-26 16:09:16
字體:
來(lái)源:轉(zhuǎn)載
供稿:網(wǎng)友

項(xiàng)目結(jié)構(gòu):

運(yùn)行效果:

========================================================================

下面是代碼部分

========================================================================

/tray/src/com/b510/tray托盤(pán)/DesktopCapture.java

復(fù)制代碼 代碼如下:

package com.b510.tray托盤(pán);

 import java.awt.event.ActionEvent;
 import java.awt.event.ActionListener;
 import java.awt.event.WindowAdapter;
 import java.awt.event.WindowEvent;

 import javax.swing.JFrame;
 import javax.swing.JOptionPane;
 import javax.swing.UIManager;

 public class DesktopCapture extends JFrame implements ActionListener {

     /**
      * 1.改變雙擊托盤(pán)截圖為單擊托盤(pán)截圖 2.修復(fù)了托盤(pán)后無(wú)反應(yīng)BUG 3.將放大鏡提示框移至左上角和右上角
      */
     private static final long serialVersionUID = 1L;
     // JButton confirm;
     // BufferedImage desktopImg;
     MyTray tray;
     boolean iconed = false;

     public DesktopCapture() {
         super("EasyCapture");
         init();
         // 當(dāng)點(diǎn)擊"-"最小化按鈕時(shí),系統(tǒng)會(huì)最小化到托盤(pán)
         addWindowListener(new WindowAdapter() {
             public void windowIconified(WindowEvent e) {
                 iconed = true;
                 setVisible(false);
             }

             // 當(dāng)點(diǎn)擊"X"關(guān)閉窗口按鈕時(shí),會(huì)詢(xún)問(wèn)用戶(hù)是否要最小化到托盤(pán)
             // 是,表示最小化到托盤(pán),否,表示退出
             public void windowClosing(WindowEvent e) {
                 int option = JOptionPane.showConfirmDialog(DesktopCapture.this,
                         "是否最小化到托盤(pán)?", "提示:", JOptionPane.YES_NO_OPTION);
                 if (option == JOptionPane.YES_OPTION) {
                     iconed = true;
                     setVisible(false);
                 } else {
                     System.exit(0);
                 }
             }
         });
         pack();
         setSize(350, 230);
         setLocation(500, 300);
         setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE);
         setResizable(false);
         setVisible(true);
     }

     void init() {

         tray = new MyTray(DesktopCapture.this);
     }

     // 截圖
     public void capture() {

     }

     public static void main(String[] args) {
         // TODO Auto-generated method stub
         try {
             UIManager.setLookAndFeel(UIManager.getSystemLookAndFeelClassName());
             DesktopCapture desk = new DesktopCapture();
         } catch (Exception e) {
             // TODO Auto-generated catch block
             e.printStackTrace();
         }

     }

     @Override
     public void actionPerformed(ActionEvent e) {

     }

 }

/tray/src/com/b510/tray托盤(pán)/MyTray.java
復(fù)制代碼 代碼如下:

package com.b510.tray托盤(pán);

 import java.awt.AWTException;
 import java.awt.Image;
 import java.awt.MenuItem;
 import java.awt.PopupMenu;
 import java.awt.SystemTray;
 import java.awt.TrayIcon;
 import java.awt.event.ActionEvent;
 import java.awt.event.ActionListener;
 import java.awt.event.MouseEvent;
 import java.awt.event.MouseListener;

 import javax.swing.ImageIcon;
 import javax.swing.JFrame;

 public class MyTray implements ActionListener, MouseListener {
     private Image icon;// 圖標(biāo)
     private TrayIcon trayIcon;
     private SystemTray systemTray;// 系統(tǒng)托盤(pán)

     private DesktopCapture frame; // 托盤(pán)所屬主窗體
     private PopupMenu pop = new PopupMenu(); // 彈出菜單
     private MenuItem capture = new MenuItem("capture");
     private MenuItem show = new MenuItem("open");
     private MenuItem exit = new MenuItem("exit");

     public MyTray(DesktopCapture frame) {
         this.frame = frame;
         // icon = Toolkit.getDefaultToolkit().getImage("./images/xiaomai.png");
         icon = new ImageIcon(this.getClass().getClassLoader().getResource(
                 "image/xiaomai.png")).getImage();

         if (SystemTray.isSupported()) {
             systemTray = SystemTray.getSystemTray();
             trayIcon = new TrayIcon(icon, "單擊直接截圖-EasyCapture", pop);
             pop.add(capture);
             pop.add(show);
             pop.add(exit);

             try {
                 systemTray.add(trayIcon);
             } catch (AWTException e1) {
                 e1.printStackTrace();
                 trayIcon.addMouseListener(this);
             }
         }
         trayIcon.addMouseListener(this);
         show.addActionListener(this);
         exit.addActionListener(this);
         capture.addActionListener(this);
     }

     @Override
     public void actionPerformed(ActionEvent e) {
         if (e.getSource() == show) {
             frame.iconed = false;
             frame.setVisible(true);
             frame.setExtendedState(JFrame.NORMAL);
         } else if (e.getSource() == capture) {
             frame.capture();
         } else {
             System.exit(0);
         }

     }

     // ����¼�
     @Override
     public void mouseClicked(MouseEvent e) {
         if (e.getClickCount() == 1 && e.getButton() != MouseEvent.BUTTON3) {
             frame.capture();
         }
     }

     @Override
     public void mouseEntered(MouseEvent arg0) {
         // TODO Auto-generated method stub

     }

     @Override
     public void mouseExited(MouseEvent arg0) {
         // TODO Auto-generated method stub

     }

     @Override
     public void mousePressed(MouseEvent arg0) {
         // TODO Auto-generated method stub

     }

     @Override
     public void mouseReleased(MouseEvent arg0) {
         // TODO Auto-generated method stub

     }
 }

發(fā)表評(píng)論 共有條評(píng)論
用戶(hù)名: 密碼:
驗(yàn)證碼: 匿名發(fā)表
主站蜘蛛池模板: 黄网站色成年大片免费高 | 欧美日韩国产一区二区三区在线观看 | 成人福利电影在线观看 | 欧美顶级毛片在线播放小说 | 午夜色片 | 美女黄页网站免费进入 | 久久成人在线观看 | 欧美国产成人在线 | 久草在线观看资源 | 狠狠操夜夜爱 | 久久国产精品久久久久久电车 | 亚洲成人高清在线观看 | 姑娘第四集免费看视频 | 精品一区二区久久久久 | 久久精品伊人网 | 久久九九热re6这里有精品 | 国产午夜精品久久久久 | 欧美精品国产综合久久 | av在线1| 久草视频在线资源 | 国产成人精品自拍视频 | 国产在线观看免费视频软件 | 免费黄色在线观看网站 | 欧美激情在线播放 | 国产精品久久久久久久av三级 | 成人午夜在线免费视频 | 欧美一级在线免费 | 国产小视频在线观看 | 亚洲福利视频52 | 日本一区二区久久久 | 热久久91| 日韩一级电影在线观看 | 日本中文字幕网址 | 欧美一级鲁丝片免费看 | 久久久久国产成人精品亚洲午夜 | 亚洲日本欧美 | 毛片在线免费观看网址 | 国产精品久久久久久久不卡 | 一级电影免费看 | 久草在线视频网 | 精品国产一区二区三区四区在线 |