JDK6中系统托盘(tray)的使用方法

MATLAB绘图中文乱码终极解决方案:从方框到清晰显示的全面指南 本文提供了MATLAB绘图中文乱码的全面解决方案。针对中文显示为方框的问题,从单次绘图的临时字体设置,到通过修改默认配置实现一劳永逸,再到系统级字体排查与Java环境配置,给出了详细的步骤指南。文章还涵盖了字体名称指定、图像导出防丢失以及跨平台协作等高级技巧,帮助用户彻底解决中文乱码困扰。 阅读详情
1 先看运行效果

托盘的现实效果



鼠标右键点击托盘


点击关于出现的对话框


2 源代码
  1.  
  2. package code.jdk.awt;
  3. import java.awt.Image;
  4. import java.awt.MenuItem;
  5. import java.awt.PopupMenu;
  6. import java.awt.SystemTray;
  7. import java.awt.Toolkit;
  8. import java.awt.TrayIcon;
  9. import java.awt.event.ActionEvent;
  10. import java.awt.event.ActionListener;
  11. import javax.swing.JOptionPane;
  12. public class SystemTrayDemo3 {
  13.   public static void main(String[] args) throws Exception {
  14.     if (!SystemTray.isSupported()) {
  15.       System.out.println("SystemTray is not supported");
  16.       return;
  17.     }
  18.     SystemTray tray = SystemTray.getSystemTray();
  19.     Toolkit toolkit = Toolkit.getDefaultToolkit();
  20.     Image image = toolkit.getImage("images/tray.gif");
  21.     PopupMenu menu = new PopupMenu();
  22.     MenuItem messageItem = new MenuItem("关于");
  23.     messageItem.addActionListener(new ActionListener() {
  24.       public void actionPerformed(ActionEvent e) {
  25.         JOptionPane.showMessageDialog(null, "www.java2000.net");
  26.       }
  27.     });
  28.     menu.add(messageItem);
  29.     MenuItem closeItem = new MenuItem("退出");
  30.     closeItem.addActionListener(new ActionListener() {
  31.       public void actionPerformed(ActionEvent e) {
  32.         System.exit(0);
  33.       }
  34.     });
  35.     menu.add(closeItem);
  36.     TrayIcon icon = new TrayIcon(image, "JAVA世纪网托盘演示", menu);
  37.     icon.setImageAutoSize(true);
  38.     tray.add(icon);
  39.   }
  40. }

提示:
    1 一定要用JDK6及以上的版本。
    2 那个托盘的图标,我使用的是网站地址栏的小图标,16×16, 大家自己准备吧。

模组 RG500Q入网问题分析 - [ ] 不同于公网,在5G专网环境中, 通常使用很多非标准的网络配置,如PLMN/APN等。因此,5G模组在专网环境下通常要做一些专门的配置才能正常入网,本文分析一例在专网环境, 5G终端无法入网问题的定位过程。 - [ ] 具体涉及到以下模组操作: 恢复出厂、SA only、锁BAND、配置MBN等 阅读详情

相关推荐

个人信息保护合规审计人员(高级)能力考核试卷+面试模拟

《个人信息保护合规审计考试与面试指南》 摘要:本文提供个人信息保护合规审计考试及面试的全面指导。考试采用闭卷笔试形式,满分100分,合格线75分,时长120分钟,包含单选、多选、判断题及综合案例分析题。内容涵盖《个人信息保护法》核心条款、审计程序、风险评估等实务要点。面试环节采用情景模拟方式,重点考察应试者在压力下处理审计独立性、客户关系与监管要求的平衡能力,以及应对数据泄露等突发事件的处置流程。案例题聚焦大型互联网平台的数据收集、共享、跨境传输等高风险环节的合规审计,要求设计完整的审计方案框架。面试评分标

qq_41525079的博客 1146

SystemTray(转帖)

        SystemTray意为桌面的系统托盘,在Windows下表现为任务状态栏的一个图标,在很多的应用中都有体现,如及时通讯软件(MSN、QQ),监控类软件(杀毒软件)等。  在 Java 6的java.awt包下提供了SystemTray和TrayIcon类,这两个类可以实现系统托盘功能,下面让我们看看如何去实现系统托盘。实现的流 程:捕获关闭窗口事件、隐藏窗口、显示托盘图标...

mxdxm8899的专栏 413

Jetson AGX Orin边缘AI实战:用YOLOv8做目标检测,我的环境配置踩坑与优化记录

本文详细记录了在Jetson AGX Orin上部署YOLOv8目标检测模型的环境配置与优化过程。从JetPack版本确认、PyTorch安装陷阱到Torchvision编译技巧,再到YOLOv8部署和系统级优化,提供了完整的实战指南。特别针对边缘AI设备的特性,分享了CUDA加速、内存管理等性能调优经验,帮助开发者高效完成工业级AI应用部署。

weixin_30839881的博客 377

用JAVA实现程序最小化到托盘区

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

Spirit23K的专栏 6337

[3D检测系列-PV-RCNN] PV-RCNN实战指南:从论文解析到代码调试全流程

本文提供了PV-RCNN在3D目标检测领域的实战全流程指南。文章深入解析了其Point-Voxel融合的核心思想,并详细演示了从环境搭建、数据准备、代码复现到模型训练与调试的具体步骤,特别针对常见的报错问题给出了解决方案,帮助开发者高效掌握这一经典算法。

weixin_29189381的博客 480

C/C++关于VScode报错“终端将被任务重用,按任意键关闭”的解决方案

这其实不是一种报错,有这个提示的原因是本地端口是被共享的,所以必须关闭一个进程才能执行另一个,只需要对 tasks.json文件做一些修改即可。 报错时候 此时的tasks.json为: { "version": "2.0.0", "command": "g++", "args": ["-g","${file}","-o","${fileDirname}/${fileBasenameNoExtension}.exe"], // 编译命令参数 "problemMatche

Jerry Man的博客 6426

Electron实现将桌面应用放入系统托盘,并实现有新消息闪动功能

在vue+electron项目中,实现系统托盘 官方描述: 用一个 Tray 来表示一个图标,这个图标处于正在运行的系统的通知区,通常被添加到一个 context menu 上. 用 new Tray('/path/to/my/icon'); 创建一个与image相关的图标 给该图标绑定click事件, 单击该系统托盘图标,控制窗口的显示隐藏。 Tray.setToolTip(toolTip) 方法实现鼠标放在图标上,显示提示信息,类似元素的title属性。 通过**Menu.buildFromTemp

ddx2019的博客 4128

Oracle数据库安装图文教程 附百度云oracle Database 11g 安装包

一,Oracle数据库安装包下载 1.从Oracle官网下载所需的数据库安装包【下载需要注册登录Oracle账户】     http://www.oracle.com/technetwork/database/enterprise-edition/downloads/index.html 2.此处有下载好的Oracle Database 11g Release 2  百度云网盘  提取码:z...

向来如此,就一定是对的吗 6万+

Eclipse插件开发之Jface

  1. 如何使用开源中国之码云  2. SWT UI之托盘对象Tray和TrayItem  3. jface常用对话框  4. SWT UI之分隔框容器SashForm  5. SWT UI之进度条ProgressBar  6. SWT UI之时间控件DateTime  7. SWT layout之堆叠布局StackLayout  8. swt & jface ui可视化工具安装  9. swt & jface ui可视化工具使用一  10. swt & jface ui可视化工具使用二  11. 用户小系统之表结构设计  12. 用户小系统之DAO设计与开发  13. 用户小系统之添加用户  14. 用户小系统之查询所有用户  15. 用户小系统之更新用户

《Python基础教程》内容总览篇(持续更新中)

大家好,我是爱编程的喵喵。双985硕士毕业,现担任全栈工程师一职,热衷于将数据思维应用到工作与生活中。从事机器学习以及相关的前后端开发工作。曾在阿里云、科大讯飞、CCF等比赛获得多次Top名次。现为优快云博客专家、人工智能领域优质创作者。喜欢通过博客创作的方式对所学的知识进行总结与归纳,不仅形成深入且独到的理解,而且能够帮助新手快速入门。个人精心开设的《Python基础课程》专栏订阅量接近900,帮助不少同学解决了Bug。

weixin_43178406的博客 35万+

用 ABAP EML 驾驭 RAP 业务对象:从事务缓冲区到落库提交的一条龙实践

摘要:ABAP EML(Entity Manipulation Language)是SAP RAP框架的核心语言能力,为ABAP开发者提供强类型、批处理友好的方式操作RAP业务对象。EML通过事务缓冲区管理数据变更,支持读取(READ ENTITIES)、修改(MODIFY ENTITIES)及事务控制(COMMIT/ROLLBACK ENTITIES)。其特点包括:基于BDEF派生类型确保类型安全,%control和%cid等特殊字段实现精细控制,统一的消息模型便于错误处理。相比传统ABAP数据访问方式,

2007 年 ~ 2025 年,深耕 SAP 技术 18 年 952

JAVA6新特性之---java桌面应用中生成托盘(tray)图标的简单方法

import javax.swing.*;import java.awt.*;import java.awt.event.*;/** *使java application生成托盘图标的例子 *本代码在JDK1.6上,Win2003平台上测试通过 *@author:NetJava.org */public class CreateTray{    /**创建单实列*/  public static 

蓝杰 1987

Android 64位支持的坑:诡异的文件名问题

最近在尝试发布我的Android应用程序的更新时,遇到了一个令人困惑的64位错误。本文将详细讲解这个问题的产生原因及解决方法,供大家参考。

m0_74337424的博客 125

Java实现系统托盘

工作需要:用swing做一个数据交换的客户端,要求很简单仅仅是一个系统托盘图标; 在网上搜索一番之后发现了一个写得不错的帖子,于是借来收藏也跟大家分享一下。   桌面的系统托盘即当程序最小化或者关闭按钮程序并没有退出,而是最小化在任务状态区域(Windows系统),当鼠标点击那个区域所在的图标有提示以及其 他的操作。在 Microsoft Windows 上,它被称为“任务栏状态区域...

KG1898的专栏 383

VC中sqlite的使用

在VC中对sqlite的使用,实现数据库大批数据的快速插入,读取数据库中的数据在ListCtrl中显示

TMS_WebGMaps_1.9.8.0_Full_Source

TMS_WebGMaps_1.9.8.0_Full_Source 全源码 delphi cbuilder

JDK6 新增窗口最小化至托盘

Java做的应用程序,过去要在win平台上实现最小化时在系统托盘区域产生一个图标,必须得用JNI调用OS的库函数才行。但是在JDK6中,终于加入了相应的API。不多说,例子如下: import java.awt.AWTException;import java.awt.Image;import java.awt.SystemTray;import java.awt.TrayI

Edison Xu 715

LinePhone3.2.7(android端最新版本) sip客户端

SIP客户端For android:LinePhone3.2.7(最新版本),官网地址:http://www.linphone.org/

JDK6的新特性之一:Desktop类和SystemTray类

在JDK6中 ,AWT新增加了两个类:Desktop和SystemTray,前者可以用来打开系统默认浏览器浏览指定的URL,打开系统默认邮件客户端给指定的邮箱发邮件,用默认应用程序打开或编辑文件(比如,用记事本打开以txt为后缀名的文件),用系统默认的打印机打印文档;后者可以用来在系统托盘区创建一个托盘程序.下面代码演示了Desktop和SystemTray的用法./** * * @author 

Stone的专栏 1379

lwip-2.0.3

lwip是瑞典计算机科学院(SICS)的Adam Dunkels 开发的一个小型开源的TCP/IP协议栈。实现的重点是在保持TCP协议主要功能的基础上减少对RAM 的占用。

托盘图标 java swing_给Java Swing程序添加系统托盘图标

给Swing程序添加系统图标需要用到两个主要的类:SystemTray和TrayIcon。SystemTray通常用于判断系统是否支持托盘图标和添加系统图标功能;TrayIcon 用来创建一个图标,然后需要使用SystemTray将add进去;在图标上可以添加PopupMenu和MenuItem,构成功能菜单示例代码:if(SystemTray.isSupported()){//判断系统是否托盘...

weixin_28990605的博客 341

java 托盘菜单_Java程序添加托盘图标和托盘弹出菜单

Java 1.6后可以添加托盘图标和托盘图标弹出菜单变的很方便,一般代码如下:if (SystemTray.isSupported()) { // 判断是否支持系统托盘URL url = this.getClass().getResource("/images/Trayicon.gif"); // 获取图片所在的URLImageIcon icon = new ImageIcon(url); // ...

weixin_34168834的博客 364

Java SE 6 新特性之一 Desktop类和SystemTray类

在JDK6中 ,AWT新增加了两个类:Desktop和SystemTray,前者可以用来打开系统默认浏览器浏览指定的URL,打开系统默认邮件客户端给指定的邮箱发邮件,用默认应用程序打开或编辑文件(比如,用记事本打开以txt为后缀名的文件),用系统默认的打印机打印文档;后者可以用来在系统托盘区创建一个托盘程序.下面代码演示了Desktop和SystemTray的用法. [code="java"...

geshenyisunjie的博客 173

JAVA添加托盘图标和托盘弹出式菜单

很多程序在运行的过程中会在系统的托盘区域添加托盘图标,方便用户快捷操作,如QQ等,在JDK1.6及其以后的版本中,JAVA也提供了对系统托盘图标的支持。 我们以系统上的网络连接托盘图标为例,首先,我们也准备一张托盘图标,建议分辨率:16*16,支持jpg、gif、png等格式,不支持ico格式的,这是需要注意的。 import...

weixin_34283445的博客 310

技术文章系列整理(持续更新)

本博客有很多关于性能及测试开发的文章。我试着对你可能感兴趣的一些重要文章进行分类。

7DGroup,让技术更有价值! 1万+

QT跨平台开发框架安装与配置全指南

QT作为跨平台C++ GUI开发框架,通过其强大的信号槽机制和元对象系统实现高效界面开发。其核心价值在于一次编写多平台部署的能力,大幅降低Windows、Linux和macOS多平台适配成本。开发者在工业控制、嵌入式系统和金融交易等领域广泛应用QT框架时,首先需要完成正确的环境安装与配置。本文以QT 5.15.2为例,详细解析Windows平台MSVC编译环境配置、Linux下gcc工具链集成以及macOS的Xcode环境准备等关键技术要点,特别针对国内开发者提供了清华镜像源加速方案。通过正确配置QTDIR

weixin_34234721的博客 435

JDK6新特性:最小化至托盘

  参考资料:老紫竹的博客:http://blog.csdn.net/java2000_net;JDK6API package toolkit;import java.awt.AWTException;import java.awt.Image;import java.awt.MenuItem;import java.awt.PopupMenu;im

依依~~ 1044

electron系统通知 隐藏到托盘 electron new Tray

可以用 electron 的 Tray 创建一个系统通知区的图标(也叫托盘),控制隐藏或显示 在入口文件添加下面的代码 // 这里是在启动入口文件 // src/main/index.js import { ipcMain, Menu, Tray } from 'electron' const path = require('path') // 注意这里是全局定义这个隐藏到系统托盘变量,不然下面 new Tray 会报错 let tray = null function createWindow

这是个什么博客 1616
上一篇: 类为何要继承,要Override的比喻
下一篇: Javascript 脚本的调试经验
老紫竹
博客等级 码龄19年 1万+粉丝 1252原创
评论 1
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值