Java1.6.0实现系统托盘技术

java GUI,创建登录页面,并可实现最小化到系统托盘 import java.awt.*; import javax.swing.*; import com.cdv.auto.scan.FileScanThread; import com.cdv.auto.utils.LogUtils; import com.cdv.auto.utils.ProperityUtils; import java.awt.event.ActionEvent; import java.awt.event.ActionListener; import java.awt.eve. 阅读详情

     Java1.6.0实现系统托盘技术演示:                                                                                                                                          本演示程序实现了点击按钮窗体关闭,托盘图标挂于系统托盘上,鼠标双击托盘图标,窗体显示,托盘图标消失,在托盘图标上点右键可弹出选择菜单(显示窗口,退出系统,Author),分别能完成不同的任务要求。

import java.awt.AWTException;
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.MouseAdapter;
import java.awt.event.MouseEvent;
import javax.swing.ImageIcon;
import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JOptionPane;
import javax.swing.JPanel;
import javax.swing.UIManager;
import javax.swing.UnsupportedLookAndFeelException;
/**
 * Java1.6.0实现系统托盘技术演示
 *
 * @author 五斗米 <如转载请保留作者和出处>
 * @blog http://blog.youkuaiyun.com/mq612
 */
public class TrayDemo extends JFrame {
    private JPanel pane = null;
    private JButton button = null; // 启动托盘图标的按钮
    private JLabel label = null; // 用来显示系统是否支持托盘的信息
    private TrayIcon trayIcon = null; // 托盘图标
    private SystemTray tray = null; // 本操作系统托盘的实例
   
    public TrayDemo() {
        super("Java1.6.0托盘技术演示");
        try {
            // 将LookAndFeel设置成Windows样式
            UIManager.setLookAndFeel("com.sun.java.swing.plaf.windows.WindowsLookAndFeel");
        } catch (Exception ex) {
            ex.printStackTrace();
        }
        pane = new JPanel();
        button = new JButton("缩小到托盘");
        button.setEnabled(false);
        label = new JLabel("本操作系统不支持托盘");
        pane.add(label);
        pane.add(button);
        if(SystemTray.isSupported()){ // 如果操作系统支持托盘
            this.tray();
        }
        this.getContentPane().add(pane);
        this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
        this.setSize(300, 200);
        this.setVisible(true);
    }
    /**
     * 托盘相关代码
     */
    private void tray(){
        label.setText("本操作系统支持托盘");
        button.setEnabled(true);
        tray = SystemTray.getSystemTray(); // 获得本操作系统托盘的实例
        ImageIcon icon = new ImageIcon("images/icon.gif"); // 将要显示到托盘中的图标
        PopupMenu pop = new PopupMenu(); // 构造一个右键弹出式菜单
        MenuItem show = new MenuItem("显示窗口");
        MenuItem exit = new MenuItem("退出演示");
        MenuItem author = new MenuItem("Author");
        /**
         * TrayIcon有三个构造
         * TrayIcon(Image image) 用“图标”来构造
         * TrayIcon(Image image, String tooltip) 用“图标”和“ToolTip”构造
         * TrayIcon(Image image, String tooltip, PopupMenu popup) 用“图标”,“ToolTip”,“弹出菜单”来构造一个托盘图标
         */
        trayIcon = new TrayIcon(icon.getImage(), "Java1.6.0托盘技术演示", pop);
        // 点击本按钮后窗口被关闭,托盘图标被添加到系统的托盘中
        button.addActionListener(new ActionListener() {
            public void actionPerformed(ActionEvent e) {
                try {
                    tray.add(trayIcon); // 将托盘图标添加到系统的托盘实例中
                    setVisible(false); // 使窗口不可视
                } catch (AWTException ex) {
                    ex.printStackTrace();
                }
            }
        });
        /**
         * 添加鼠标监听器,当鼠标在托盘图标上双击时,默认显示窗口
         */
        trayIcon.addMouseListener(new MouseAdapter() {
            public void mouseClicked(MouseEvent e) {
                if(e.getClickCount()==2){ // 鼠标双击
                    tray.remove(trayIcon); // 从系统的托盘实例中移除托盘图标
                    setVisible(true); // 显示窗口
                }
            }
        });
        show.addActionListener(new ActionListener() { // 点击“显示窗口”菜单后将窗口显示出来
            public void actionPerformed(ActionEvent e) {
                tray.remove(trayIcon); // 从系统的托盘实例中移除托盘图标
                setVisible(true); // 显示窗口
            }
        });
        exit.addActionListener(new ActionListener() { // 点击“退出演示”菜单后退出程序
            public void actionPerformed(ActionEvent e) {
                System.exit(0); // 退出程序
            }
        });
        author.addActionListener(new ActionListener() {
            public void actionPerformed(ActionEvent e) {
                showMessage();
            }
        });
        pop.add(show);
        pop.add(exit);
        pop.add(author);
    }
    /**
     * 显示信息
     */
    private void showMessage(){
        JOptionPane.showMessageDialog(this, new JLabel("<html>作者:mq612(五斗米)<br>Blog: http://blog.youkuaiyun.com/mq612</html>"), "五斗米", JOptionPane.INFORMATION_MESSAGE);
    }
   
    public static void main(String[] args) {
        new TrayDemo();
    }
   
}
实现JFrame最小化到系统托盘的功能 本文还有配套的精品资源,点击获取 简介:在Java GUI开发中,通过使用Swing库的 TrayIcon 类,可实现将 JFrame 最小化到系统托盘的功能。该功能适用于需要长时间运行的应用程序,比如聊天软件或下载工具。该实现方法利用了自JDK 1.6起引入的系统托盘支持,通过编程步骤实现窗口在最小化时不在任务栏显示,而是隐藏至系统托盘区域。包... 阅读详情

相关推荐

Java系统托盘图标实现指南

Java托盘图标是位于Windows系统任务栏右侧通知区域的小图标,它允许应用程序在后台运行时,用户仍可以方便地进行一些操作。托盘图标通常与弹出菜单一起使用,可以执行打开应用程序窗口、退出程序等命令。使用托盘图标的好处在于提高用户的工作效率并减少系统资源的消耗,因为它不必在后台持续显示窗口。在本章中,我们将先概览Java托盘图标的使用场景和基本功能,为理解后续章节中系统托盘的实现和优化打下基础。

weixin_31869917的博客 850

Java1.6.0实现GUI系统托盘技术演示代码(附详细注释)

Java1.6.0实现系统托盘技术演示:Java1.6.0实现系统托盘技术演示:本演示程序实现了点击按钮窗体关闭,托盘图标挂于系统托盘上,鼠标双击托盘图标,窗体显示,托盘图标消失,在托盘图标上点右键可弹出选择菜单(显示窗口,退出系统,Author),分别能完成不同的任务要求。 import java.awt.AWTExcepti

2967

jd-gui-1.6.3java独立运行的反编译工具java反编译工具.jar

这是一个java的反编译工具,可以将jar的工具包反编译成java的源代码,先贡献出来供大家下载。

用java写个GUI界面,实现桌面托盘,并能够实现从数据库获取数据,播放音乐

第一步:实现桌面托盘代码,包括设计窗体的图标,托盘的图标(注意图片最好是16*16像素),按键布局等package com.lin.schedule; import java.awt.AWTException; import java.awt.BorderLayout; import java.awt.FlowLayout; import java.awt.Frame; import java.

linbichengdeps的博客 1630

java Swing 中的托盘

java 编写 的基于 swing 的桌面托盘

java GUI做的抽奖转盘

项目源码 java GUI 效果很炫

[转贴]托盘编程全接触

No.1 [转贴]托盘编程全接触 托盘编程全接触 作者:acute 托盘编程 一、托盘简介 所谓的“托盘”,在Windows系统界面中,指的就是下面任务条右侧,有系统时间等等的标志的那一部分。在程序最小化或挂起时,但有不希望占据任务栏的时候,就可以把程序放到托盘区。其实,托盘区的编程很简单,下面简要阐述一下子喽 二、托盘编程相关函数 其实呢,把程序放到托盘上的本质就是先在托盘区绘制一个图标,然后把

糯米糊糊的专栏 1782

CoDeSys系列-3、Windows运行时软PLC主站和p-net从站IO设备组网测试

前面CODESY下载安装并熟悉了,p-net搭建从站也已经跑在虚拟机树莓派上了,我们只需要快速搭建一个profinet主站来和从站进行交互即可,这里我们直接用Windows下带的软PLC搭建profinet主站并和p-net的demo从站程序进行IO交互。评估是否进行Windows下的运行时PLC前先看一下注意事项,Windows下安装配置会需要修改boot及防火墙等,可能会影响Windows电脑的正常使用,所以创建项目时的设备可以选择非RTE的。

逍遥游的博客 7312

JAVA实现系统托盘

http://chowqingbao.iteye.com/blog/1064149 让界面更加绚丽 Java SE 6.0 GUI体验   系统托盘   现在有很多程序除了提供了一个完整的主界面外,在它最小化或者启动后在右下角的系统托盘区总是有一个小图标,如金山词霸、QQ和MSN等。图5显示了一台计算机的系统托盘里的图标。   如果使用C++、Delph

caixiexin的专栏 1280

基因的富集分析

通过RNA_seq差异表达分析等获得一组基因,想要进一步了解这些基因可能参与哪些生物学过程,具有哪些功能,一般就会用到基因的富集分析了。现在小麦基因注释信息已经可以获得,目前来看包括两套。一个是TGACv1,另一个就是IWGSC1.0。需要用到一个叫“clusterProfiler”的R包。下面用到的数据集来自TGACv1。1、安装source("https://bioconductor.org/b

xxxxx 1万+

BLDC控制实验:方波、霍尔、开环、定速、正转

本文记录博主学习BLDC控制软件的过程。 文章目录1 概述2 软件架构及工具链2.1 软件架构2.2 工具链3 底层代码生成3.1 时钟配置3.2 按键输入配置 1 概述 本文是博主第一次做BLDC控制实验,目的仅仅是写代码让BLDC转起来,而暂时不考虑其他复杂的需求。 控制的方法是比较简单的六步换相法。利用电机内部的霍尔传感器,通过参考电机厂家给出的二二导通换相表,生成方波来控制电机。第一次实验为了简化需求,只考虑开环、定速、正转的情况: 开环:不考虑速度反馈,直接给PWM让电机转起来; 定速:不考虑速

u013288925的博客 1万+

java创建系统托盘实现(swt和jdk6分别实现)

转自:http://hi.baidu.com/btb368/blog/item/18ec0d7a1a5173fc0ad187bf.html 由于jdk6之前并不支持 所以使用swt jdk6可以支持了 建议使用jdk6的版本 因为它才是真正的跨平台 swtimport org.eclipse.swt.*;import org.eclipse.swt.graphics.*;import

989

毕设助力!从0到1构建基于YOLO的家居安防异常活动监测系统,让你的毕设守护家庭安全

做完这个项目,你会发现自己完整走过了“数据采集→标注→模型训练→功能集成→界面开发”的毕设全流程,这不仅是技术能力的证明,更是对“技术守护生活”这一理念的实践。答辩时,你可以重点讲这几点:系统解决了家居安防的哪些痛点、对比了不同YOLO模型的性能差异、系统未来能怎么优化(比如对接智能门锁/报警器、实现语音交互)。未来,这个系统还能往“更智能”的方向发展:比如结合行为分析判断异常意图、开发移动端APP实现全屋设备联动、在智慧社区中实现多家庭联防……想象空间很大。

LXY_LOVE36的博客 120

java程序如何实现右下角系统托盘图标显示

刚刚学习java,看到程序右下角图标的显示感觉很新鲜,于是上网查找一些资料。自己写了一个简单的程序实现了一下。 import java.awt.AWTException; import java.awt.Image; import java.awt.MenuItem; i

流年逝水 4104

零基础速成simulink代码生成——stateflow基础3

此专栏面向嵌入式工程没有matlab开发经验的人,可以快速学习和实践这门技术。MDB技术,越来越成熟和普遍,从手写代码转到基于模型开发已经是大势,不仅减少开发周期,还增加代码的复用性。汽车领域、医疗和算法建模广泛使用。

不断debug,优化中…… 1711

xilinx原语及bank简介

图8是HP bank与HR bank的IO模块,其中PAD是FPGA的金属管脚,IOB是输入、输出引脚的控制模块。此时使用原语就可以只调用需要的组件,不需要去考虑其余组件参数设置,就方便很多,借助此次机会就对IDDR、ODDR、IDELAYE2、ODELAYE2、IDELAYCRTL、ISERDESE、OSERDESE等几个原语做了简要了解,并对原语的各个模式进行了仿真,本文最初是介绍IDDR的,但在介绍IDDR这些原语之前,还需要了解一下7系列FPGA bank的分类和区别,所以就有了本文。

qq_43416206的博客 413

JAVA SE 6.0 新特性 1 系统托盘

随着 Java se 6.0 的推出 JDK6.0 对java Desktop 编程提供了更强大的支持,其中本人最期望  系统托盘 也问世了 在这里简单与大家分享一下代码 java 代码 package test;       import java.awt.AWTException;    import java.awt.Image;    i...

victorKevin 153

【Python爬虫系列】_005.浏览器开发者工具(详解)

Elements(元素)分析当前页面节点,用来辅助书写BS或者XPath这里面的数据与源代码有区别,不一定准确(避坑)Console(控制台)这个除了查看错误信息、打印调试信息(console.log())、写一些测试脚本以外,还可以当作Javascript API查看用例如我想查看console都有哪些方法和属性,我可以直接在Console中输入"console"并执行后续学js逆向的时候需要用到Sources(源代码)与在网页页面,鼠标右键——查看网页源代码 内容一致。

weixin_50296259的博客 422

java系统托盘_Java实现把窗体隐藏到系统托盘

package pretoct;import java.awt.AWTException;import java.awt.MenuItem;import java.awt.PopupMenu;import java.awt.SystemTray;import java.awt.TrayIcon;import java.awt.event.ActionEvent;import java.awt.ev...

weixin_36249804的博客 190

〔重庆理工大学〕大学物理实验--变温霍耳效应及其参数测定

每个老师要求不同,实验报告内容和数据仅供参考。

Pretty Boy Fox的博客 3043

Devexpress16.2.6破解工具

Devexpress16.2.6破解工具Devexpress16.2.6破解工具Devexpress16.2.6破解工具Devexpress16.2.6破解工具

如何让java程序最小化至系统托盘

下面的这个程序简单地实现了把java应用程序缩小到托盘的方法. 程序运行的jdk要是1.6才行,因为这是J2SDK1.6新加的一些类和方法. 程序中实测必须是16*16的图片才行 import java.awt.*; import java.io.*; import javax.swing.*; import java.awt.event.*; import javax.im

Earl_yuan的专栏 1566

ssm框架搭建

这个是一个在idea上成功跑起来的ssm框架项目,保存在这里方便以后使用直接下载

Java程序实现系统托盘菜单

Java 1.6 引进的SystemTray(托盘菜单)。 (SystemTray 、TrayIcon)用来实现Java托盘菜单,详细代码: import java.awt.FlowLayout; import java.awt.MenuItem; import java

小码哥 1066

Data-Structures-and-Algorithm-Analysis-in-Java.pdf

作者: Weiss, Mark A. 出版社: Addison Wesley Data Structures and Algorithm Analysis in Java is an “advanced algorithms” book that fits between traditional CS2 and Algorithms Analysis courses. In the old ACM Curriculum Guidelines, this course was known as CS7. This text is for readers who want to learn good programming and algorithm analysis skills simultaneously so that they can develop such programs with the maximum amo...

java swing 最小化到托盘_Java实现把窗体隐藏到系统托盘方法

系统托盘也就是桌面右下角的图标。。此程序实现的功能是点击窗体关闭按钮不退出程序,而是隐藏到系统托盘里面。实质上也只是把窗体不可见了。。。import java.awt.AWTException;import java.awt.MenuItem;import java.awt.PopupMenu;import java.awt.SystemTray;import java.awt.TrayIcon;...

weixin_34461414的博客 699
上一篇: 数据库设计技巧
下一篇: java动态加载类
QJC13
博客等级 码龄19年 9粉丝 23原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值