java语言 托盘控制 任务栏

 
  1. import java.util.*;
  2. import java.io.*;
  3. import javax.swing.*;
  4. import java.awt.*;
  5. import java.awt.event.*;
  6. public class Test extends JFrame {
  7.     public Test() {
  8.         final TrayIcon trayIcon;
  9.         if (SystemTray.isSupported()) {
  10.             SystemTray tray = SystemTray.getSystemTray();
  11.             Image image = Toolkit.getDefaultToolkit().getImage("src/pic/head.gif");
  12.             MouseListener mouseListener = new MouseListener() {
  13.                 public void mouseClicked(MouseEvent e) {
  14.                     System.out.println("Tray Icon - Mouse clicked!");
  15.                 }
  16.                 public void mouseEntered(MouseEvent e) {
  17.                     System.out.println("Tray Icon - Mouse entered!");
  18.                 }
  19.                 public void mouseExited(MouseEvent e) {
  20.                     System.out.println("Tray Icon - Mouse exited!");
  21.                 }
  22.                 public void mousePressed(MouseEvent e) {
  23.                     System.out.println("Tray Icon - Mouse pressed!");
  24.                 }
  25.                 public void mouseReleased(MouseEvent e) {
  26.                     System.out.println("Tray Icon - Mouse released!");
  27.                 }
  28.             };
  29.             ActionListener exitListener = new ActionListener() {
  30.                 public void actionPerformed(ActionEvent e) {
  31.                     System.out.println("Exiting...");
  32.                     System.exit(0);
  33.                 }
  34.             };
  35.             PopupMenu popup = new PopupMenu();
  36.             MenuItem defaultItem = new MenuItem("Exit");
  37.             defaultItem.addActionListener(exitListener);
  38.             popup.add(defaultItem);
  39.             trayIcon = new TrayIcon(image, "Tray Demo", popup);
  40.             ActionListener actionListener = new ActionListener() {
  41.                 public void actionPerformed(ActionEvent e) {
  42.                     trayIcon.displayMessage("Action Event",
  43.                             "An Action Event Has Been Performed!",
  44.                             TrayIcon.MessageType.INFO);
  45.                 }
  46.             };
  47.             trayIcon.setImageAutoSize(true);
  48.             trayIcon.addActionListener(actionListener);
  49.             trayIcon.addMouseListener(mouseListener);
  50.             try {
  51.                 tray.add(trayIcon);
  52.             } catch (AWTException e) {
  53.                 System.err.println("TrayIcon could not be added.");
  54.             }
  55.         } else {
  56.             //  System Tray is not supported
  57.         }
  58.     }
  59.     public static void main(String[] args) {
  60.         Test t = new Test();
  61.     }
  62. }

阅读文献:http://java.sun.com/developer/technicalArticles/J2SE/Desktop/javase6/systemtray/

好的,下面是用 Java 语言编写一个计算器任务栏托盘图标的示例代码: ```java import javax.swing.*; import java.awt.*; import java.awt.event.*; public class CalculatorTrayIcon { public static void main(String[] args) { // 创建计算器窗口并设置其属性 JFrame calculator = new JFrame("Calculator"); calculator.setSize(300, 400); calculator.setLocationRelativeTo(null); // 创建计算器界面组件并添加到窗口中 JPanel panel = new JPanel(new GridLayout(4, 4)); for (int i = 1; i <= 9; i++) { JButton button = new JButton(String.valueOf(i)); panel.add(button); } JButton button0 = new JButton("0"); panel.add(button0); JButton buttonAdd = new JButton("+"); panel.add(buttonAdd); JButton buttonSubtract = new JButton("-"); panel.add(buttonSubtract); JButton buttonMultiply = new JButton("*"); panel.add(buttonMultiply); JButton buttonDivide = new JButton("/"); panel.add(buttonDivide); JButton buttonEqual = new JButton("="); panel.add(buttonEqual); JButton buttonClear = new JButton("C"); panel.add(buttonClear); calculator.add(panel); // 创建系统托盘图标并设置其属性 if (SystemTray.isSupported()) { SystemTray tray = SystemTray.getSystemTray(); Image image = Toolkit.getDefaultToolkit().getImage("icon.png"); PopupMenu menu = new PopupMenu(); MenuItem exitItem = new MenuItem("Exit"); exitItem.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent e) { System.exit(0); } }); menu.add(exitItem); TrayIcon trayIcon = new TrayIcon(image, "Calculator", menu); trayIcon.setImageAutoSize(true); tray.add(trayIcon); // 添加鼠标监听器,点击时显示或隐藏计算器窗口 trayIcon.addMouseListener(new MouseAdapter() { public void mouseClicked(MouseEvent e) { if (e.getButton() == MouseEvent.BUTTON1) { if (calculator.isVisible()) { calculator.setVisible(false); } else { calculator.setVisible(true); } } } }); } } } ``` 这个示例代码使用了 JavaSwing 组件来创建一个简单的计算器界面,并使用了 Java 的 SystemTray 类来创建一个系统托盘图标。当单击托盘图标时,会显示或隐藏计算器窗口。如果需要将这个示例代码编译运行,请将 `icon.png` 文件放在与 `CalculatorTrayIcon.java` 文件相同的目录下。
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值