本文转载,原作者看到请谅解!
# 源码:
# /*
# * MainFrame.java
# *
# */
#
# package com.topking.tray.ui;
#
# 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 java.awt.event.WindowEvent;
# import java.awt.event.WindowListener;
#
# import javax.swing.ImageIcon;
#
# /**
# *
# */
# public class MainFrame extends javax.swing.JFrame implements ActionListener, WindowListener{
#
# // Variables declaration - do not modify
# private javax.swing.JLabel L_img;
# private javax.swing.JLabel L_img2;
# private PopupMenu pop;
# private MenuItem open,close;
# private TrayIcon trayicon;
# // End of variables declaration
#
#
# /** Creates new form MainFrame */
# public MainFrame() {
# this .setTitle( "Java实现系统托盘示例" );
# this .setLocation( 300 , 300 );
# initComponents();
# }
#
# /** This method is called from within the constructor to
# * initialize the form.
# * WARNING: Do NOT modify this code. The content of this method is
# * always regenerated by the Form Editor.
# */
# @SuppressWarnings ( "unchecked" )
# // <editor-fold defaultstate="collapsed" desc="Generated Code">
# private void initComponents() {
#
# // L_img = new javax.swing.JLabel(new ImageIcon((MainFrame.class).getResource("com/topking/tray/images/netbean1.png")));
# // L_img2 = new javax.swing.JLabel(new ImageIcon((MainFrame.class).getResource("com/topking/tray/images/netbean2.png")));
# L_img = new javax.swing.JLabel( new ImageIcon( this .getClass().getClassLoader().getResource( "com/topking/tray/images/netbean1.png" )));
# L_img2 = new javax.swing.JLabel( new ImageIcon( this .getClass().getClassLoader().getResource( "com/topking/tray/images/netbean2.png" )));
#
#
# pop = new PopupMenu();
# open = new MenuItem( "打开" );
# open.addActionListener(this );
#
# close = new MenuItem( "关闭" );
# close.addActionListener(this );
#
# pop.add(open);
# pop.add(close);
#
# if (SystemTray.isSupported()){
# SystemTray tray = SystemTray.getSystemTray();
# Image icon = this .getToolkit().getImage( this .getClass().getClassLoader().getResource( "com/topking/tray/images/user_edit.png" ));
# trayicon = new TrayIcon(icon, "系统托盘示例(java)" ,pop);
# trayicon.addMouseListener(new MouseListener(){
#
# public void mouseClicked(MouseEvent e) {
# // TODO Auto-generated method stub
# if (e.getClickCount()== 2 ){
# openFrame();
# }
# }
#
# public void mouseEntered(MouseEvent e) {
# // TODO Auto-generated method stub
#
# }
#
# public void mouseExited(MouseEvent e) {
# // TODO Auto-generated method stub
#
# }
#
# public void mousePressed(MouseEvent e) {
# // TODO Auto-generated method stub
#
# }
#
# public void mouseReleased(MouseEvent e) {
# // TODO Auto-generated method stub
#
# }
#
# });
#
# try {
# tray.add(trayicon);
# } catch (AWTException e) {
# // TODO Auto-generated catch block
# e.printStackTrace();
# }
# }
#
# javax.swing.GroupLayout layout = new javax.swing.GroupLayout(getContentPane());
# getContentPane().setLayout(layout);
# layout.setHorizontalGroup(
# layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
# .addGroup(javax.swing.GroupLayout.Alignment.TRAILING, layout.createSequentialGroup()
# .addContainerGap()
# .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.TRAILING)
# .addComponent(L_img2, javax.swing.GroupLayout.Alignment.LEADING, javax.swing.GroupLayout.DEFAULT_SIZE, 380 , Short.MAX_VALUE)
# .addComponent(L_img, javax.swing.GroupLayout.Alignment.LEADING, javax.swing.GroupLayout.DEFAULT_SIZE, 380 , Short.MAX_VALUE))
# .addContainerGap())
# );
# layout.setVerticalGroup(
# layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
# .addGroup(layout.createSequentialGroup()
# .addContainerGap()
# .addComponent(L_img)
# .addGap(29 , 29 , 29 )
# .addComponent(L_img2, javax.swing.GroupLayout.PREFERRED_SIZE, 222 , javax.swing.GroupLayout.PREFERRED_SIZE)
# .addContainerGap(39 , Short.MAX_VALUE))
# );
#
# pack();
# }// </editor-fold>
#
# /**
# * @param args the command line arguments
# */
# public static void main(String args[]) {
# java.awt.EventQueue.invokeLater(new Runnable() {
# public void run() {
# new MainFrame().setVisible( true );
# }
# });
# }
#
# public void actionPerformed(ActionEvent e) {
# // TODO Auto-generated method stub
# if (e.getSource()==open){
# openFrame();
# }
# if (e.getSource()==close){
# System.exit(-1 );
# }
# }
#
# public void openFrame(){
# this .setVisible( true );
# this .setAlwaysOnTop( true );
# }
# public void windowActivated(WindowEvent arg0) {
# // TODO Auto-generated method stub
#
# }
#
# public void windowClosed(WindowEvent arg0) {
# // TODO Auto-generated method stub
# this .setVisible( false );
# this .dispose();
# }
#
# public void windowClosing(WindowEvent arg0) {
# // TODO Auto-generated method stub
#
# }
#
# public void windowDeactivated(WindowEvent arg0) {
# // TODO Auto-generated method stub
#
# }
#
# public void windowDeiconified(WindowEvent arg0) {
# // TODO Auto-generated method stub
#
# }
#
# //窗口最小化
# public void windowIconified(WindowEvent arg0) {
# // TODO Auto-generated method stub
# this .dispose();
# }
#
# public void windowOpened(WindowEvent arg0) {
# // TODO Auto-generated method stub
#
# }
#
#
# }
分享到:
相关推荐
在Java的Swing库中,实现系统托盘功能可以为应用程序提供一个持续的交互界面,即使主窗口已经最小化或关闭。系统托盘,也称为通知区域或系统通知区,通常位于操作系统任务栏的右侧,允许用户快速访问常用的功能或...
Java中的系统托盘功能主要通过Java的Swing库来实现,下面我们将详细探讨如何使用Java实现系统托盘。 首先,我们需要导入相关的Java库,特别是javax.swing.*,因为系统托盘的功能主要包含在这个库中。以下是一个简单...
首先,要实现系统托盘功能,我们需要导入Java Swing库中的`javax.swing.*`和`java.awt.*`包,这两个包提供了必要的组件和工具。`javax.swing.TrayIcon`是实现系统托盘功能的核心类,而`java.awt.SystemTray`则代表了...
在Java编程中,实现系统托盘功能主要涉及到`java.awt.TrayIcon`类,这是Java Swing库的一部分,用于在操作系统的任务栏或系统托盘区域创建和管理图标。这个功能通常用于提供一种方式,使得即使主窗口被最小化或者...
### JAVA实现系统托盘知识点详解 #### 一、概述 在现代软件开发中,系统托盘功能被广泛应用于各类应用程序中,特别是在Windows操作系统上。它为用户提供了方便的应用程序控制方式,同时也帮助开发者以更优雅的方式...
本项目“java实现360悬浮球”利用Swing创建了一个可以在屏幕任意位置移动并具有360度旋转效果的悬浮窗口,同时还实现了加入系统托盘和退出功能。下面我们将详细探讨这个项目涉及的关键知识点。 1. **Java Swing**: ...
这个"JAVA系统托盘图标控制程序"是一个示例项目,展示了如何在Java中实现这样的功能。 首先,我们要了解`TrayIcon`类,这是Java Swing库中的一个关键组件,用于在系统托盘中创建和管理图标。在`TrayIconDemo.java`...
Java提供了Java AWT和Swing库来实现这个功能,允许开发者创建在系统托盘中显示的应用程序图标,以及与之相关的菜单和事件处理。下面将详细讲解如何使用Java代码生成系统托盘图标。 首先,你需要导入必要的Java库: ...
本篇文章将深入探讨如何利用Swing实现系统托盘示例,结合提供的`TrayTest.java`源码以及`computer_delete.png`和`computer.png`这两张图标资源。 首先,`TrayTest.java`是实现系统托盘功能的主要代码文件。在Java中...
要实现这个功能,你需要使用Java的`java.awt.TrayIcon`类,这是Java Swing库的一部分,它提供了将图标添加到系统托盘的能力。以下是一个简单的步骤和知识点概述: 1. **检查系统支持**: 在使用`TrayIcon`之前,你...
在Java开发中,实现应用程序的系统托盘功能是一种常见的需求,尤其是在设计桌面应用时,如即时通讯软件、音乐播放器等,它能提升用户体验,使程序更加人性化。本文将详细解析如何在Java中利用`java.awt.SystemTray`...
在Java中,系统托盘功能是通过`java.awt.TrayIcon`类提供的,该类是Java Swing库的一部分。要使用系统托盘,你需要确保操作系统支持并且Java虚拟机启用了系统托盘。你可以通过`java.awt.SystemTray`类的静态方法`is...
在Java中,任务栏菜单主要与系统托盘(System Tray)相关,这在AWT中称为`java.awt.TrayIcon`,而在Swing中则通过`javax.swing.JTrayIcon`实现。`TrayIcon`允许我们在系统任务栏上显示图标,并提供一个下拉菜单,...
在Java编程环境中,实现窗口应用最小化到系统托盘是一项常见的功能,特别是在开发桌面应用程序时。这个功能使得用户可以将程序窗口隐藏到任务栏的托盘区域,而不是将其关闭或最小化到任务栏,从而方便用户快速访问。...
以下将详细介绍如何使用Java和Swing实现托盘功能。 首先,要使用`TrayIcon`,需要确保操作系统的任务栏支持这一特性。在Java中,我们可以通过`SystemTray`类来检查是否支持托盘功能: ```java import java.awt....
在Java编程语言中,创建一个类似QQ右下角图标效果的应用涉及到Java的系统托盘(System Tray)功能。系统托盘允许程序在主界面关闭后仍然在操作系统的通知区域保持活跃,用户可以通过点击托盘图标来恢复或与应用程序...
`TrayIcon`是Java 6引入的,允许程序在操作系统任务栏的系统托盘区域创建一个图标。当有新的消息到来时,可以通过更新`TrayIcon`的提示信息或者显示一个通知对话框来提醒用户。 1. **创建TrayIcon** 首先,需要...
下载本资源请参考博文《企业内部即时通讯系统项目总结》 文章地址: ... 实现功能: 1)单聊(发送文本消息) ...3)发送表情 ...14)系统托盘 为了体现尊重别人的劳动成果,所以采用有偿下载方式。敬请大家见谅。
3. **TrayIcon类**: 在Java Swing库中,`java.awt.TrayIcon`类是用来在系统托盘中显示图标并处理与之相关的事件的。但需要注意的是,`TrayIcon`并不支持所有平台,尤其是老版本的Java运行环境或者非图形化环境可能不...