java 制作托盘 图标闪烁实现 谢谢各位指教。。有代码的能发给我吗?万分的感谢你们 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 这跟天气冷有什么关系?~呼呼,开个暖气咯!给你段小代码,闪烁我是不懂怎么弄了:public void systemTray() ...{ try ...{ if (java.awt.SystemTray.isSupported()) ...{// 判断当前平台是否支持系统托盘 java.awt.SystemTray st = java.awt.SystemTray.getSystemTray(); Image image = Toolkit.getDefaultToolkit().getImage( getClass().getResource("/trans/resourses/ipmsg.gif"));//定义托盘图标的图片 java.awt.TrayIcon ti = new java.awt.TrayIcon( image); ti.setToolTip ( "文件传输工具 "); ti.setPopupMenu ( this.popupMenu1); //为托盘添加右键菜单 st.add(ti); } } catch (Exception e) ...{ } }这个函数需要jre1.6以上,但现在大部分人使用的还是jre1.5及一下版本,所以在很多机器上不能执行哦! 用gif图片做这个闪烁效果不就可以了?你难道还想做其它事情? Image image = Toolkit.getDefaultToolkit().getImage( getClass().getResource("/trans/resourses/ipmsg.gif"));//定义托盘图标的图片 这里要闪的时候换一张会闪的图片 谢谢上楼。对哦,我可以当消息来得时候,我把以前那张图片换成一张会闪动的图片。这样就不需要让他图片之间进行切换了。我先try下 这个急的理由比较汗,好了,不扯了你要的闪烁只要ps一下你的托盘图标,把这张图弄成闪烁的就OK了 改成.gif的格式的图标。就会闪烁的 这儿有个以前在网上找的例子,貌似就是将图标与空白图片通过线程不停的切换来实现的.......................运行步骤:先找个1.gif文件放在和java文件同一目录下,运行之后主窗体出来之后,点击窗体的最小化按钮,就能在托盘上看到效果了,win7下就能看到效果.............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.WindowAdapter;import java.awt.event.WindowEvent;import javax.swing.ImageIcon;import javax.swing.JFrame;import org.omg.CORBA.PUBLIC_MEMBER;/** * 创建闪动的托盘图像 * @author 黄根华 */public class TestTray extends JFrame implements Runnable { private SystemTray sysTray;// 当前操作系统的托盘对象 private TrayIcon trayIcon;// 当前对象的托盘 private int num = 10; ImageIcon icon = null; public TestTray() { this.createTrayIcon();// 创建托盘对象 init(); } /** * 初始化窗体的方法 */ /** * */ public void init() { this.setTitle("闪动托盘"); this.setSize(400, 400); this.setDefaultCloseOperation(this.EXIT_ON_CLOSE); this.setLocationRelativeTo(null); // 添加窗口事件,将托盘添加到操作系统的托盘 this.addWindowListener(new WindowAdapter() { public void windowIconified(WindowEvent e) { addTrayIcon(); } }); this.setVisible(true); } /** * 添加托盘的方法 */ public void addTrayIcon() { try { sysTray.add(trayIcon);// 将托盘添加到操作系统的托盘 setVisible(false);// 使得当前的窗口隐藏 new Thread(this).start(); } catch (AWTException e1) { e1.printStackTrace(); } } /** * 创建系统托盘的对象 步骤: 1,获得当前操作系统的托盘对象 2,创建弹出菜单popupMenu 3,创建托盘图标icon * 4,创建系统的托盘对象trayIcon */ public void createTrayIcon() { sysTray = SystemTray.getSystemTray();// 获得当前操作系统的托盘对象 icon = new ImageIcon("1.gif");// 托盘图标 PopupMenu popupMenu = new PopupMenu();// 弹出菜单 MenuItem mi = new MenuItem("弹出"); MenuItem exit = new MenuItem("关闭"); popupMenu.add(mi); popupMenu.add(exit); // 为弹出菜单项添加事件 mi.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent e) { setVisible(true); sysTray.remove(trayIcon); } }); exit.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent e) { System.exit(0); } }); trayIcon = new TrayIcon(icon.getImage(), "闪动托盘", popupMenu); } /** * @param args */ public static void main(String[] args) { TestTray testTray = new TestTray(); } /* * 线程控制闪动 (non-Javadoc) * * @see java.lang.Runnable#run() */ public void run() { while (num >= 0) { this.trayIcon.setImage(new ImageIcon("").getImage()); try { Thread.sleep(300); } catch (InterruptedException e) { e.printStackTrace(); } this.trayIcon.setImage(icon.getImage()); try { Thread.sleep(300); } catch (InterruptedException e) { e.printStackTrace(); } num--; } }} 急聘 兼职网络信息回复员(若干名)100元/天 工资日结招聘人数: 若干名 薪资待遇: 工作每天3-5小时,100-200元/天工资每日支付;岗位描述: 负责公司所要求的信息回复工作(有内容样版),工作地点不限,专兼职均可!应聘要求: 上网熟练,平均每天工作投入约3小时,具体根据效率自定; 学历不限,在职或学生皆可;勤奋,认真,有责任感;熟悉用电脑发消息的整个流程。(很简单,学一下就会!) http://www.coien-cn.info/?87586.htm 楼主求源码,求学习[email protected] 如何用java编程遗传算法? java空格长度 有谁用JAVA操作过PDW文件? java swing 高手请进 一个初学者对方法调用的疑惑 java同步 是什么意思? 怎样在applet中给文本加上超链接呢? 请问除了jet还有哪些java本地编译器? 导入自定义类的问题 刚刚接触JBUILDER,急问2个问题 在swt中的Text控件上能添加右键菜单吗 Action和ActionListener的问题
...{
try
...{
if (java.awt.SystemTray.isSupported())
...{// 判断当前平台是否支持系统托盘
java.awt.SystemTray st = java.awt.SystemTray.getSystemTray();
Image image = Toolkit.getDefaultToolkit().getImage(
getClass().getResource("/trans/resourses/ipmsg.gif"));//定义托盘图标的图片
java.awt.TrayIcon ti = new java.awt.TrayIcon( image);
ti.setToolTip ( "文件传输工具 ");
ti.setPopupMenu ( this.popupMenu1); //为托盘添加右键菜单
st.add(ti);
}
}
catch (Exception e)
...{
}
}这个函数需要jre1.6以上,但现在大部分人使用的还是jre1.5及一下版本,所以在很多机器上不能执行哦!
getClass().getResource("/trans/resourses/ipmsg.gif"));//定义托盘图标的图片 这里要闪的时候换一张会闪的图片
对哦,我可以当消息来得时候,我把以前那张图片换成一张会闪动的图片。
这样就不需要让他图片之间进行切换了。
我先try下
这个急的理由比较汗,好了,不扯了
你要的闪烁只要ps一下你的托盘图标,把这张图弄成闪烁的就OK了
运行步骤:先找个1.gif文件放在和java文件同一目录下,运行之后主窗体出来之后,点击窗体的最小化按钮,就能在托盘上看到效果了,win7下就能看到效果.............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.WindowAdapter;
import java.awt.event.WindowEvent;import javax.swing.ImageIcon;
import javax.swing.JFrame;import org.omg.CORBA.PUBLIC_MEMBER;/**
* 创建闪动的托盘图像
* @author 黄根华
*/
public class TestTray extends JFrame implements Runnable { private SystemTray sysTray;// 当前操作系统的托盘对象 private TrayIcon trayIcon;// 当前对象的托盘 private int num = 10; ImageIcon icon = null; public TestTray() {
this.createTrayIcon();// 创建托盘对象
init();
} /**
* 初始化窗体的方法
*/
/**
*
*/
public void init() {
this.setTitle("闪动托盘");
this.setSize(400, 400);
this.setDefaultCloseOperation(this.EXIT_ON_CLOSE);
this.setLocationRelativeTo(null);
// 添加窗口事件,将托盘添加到操作系统的托盘
this.addWindowListener(new WindowAdapter() { public void windowIconified(WindowEvent e) {
addTrayIcon();
}
}); this.setVisible(true);
} /**
* 添加托盘的方法
*/
public void addTrayIcon() {
try {
sysTray.add(trayIcon);// 将托盘添加到操作系统的托盘
setVisible(false);// 使得当前的窗口隐藏
new Thread(this).start();
} catch (AWTException e1) {
e1.printStackTrace();
}
} /**
* 创建系统托盘的对象 步骤: 1,获得当前操作系统的托盘对象 2,创建弹出菜单popupMenu 3,创建托盘图标icon
* 4,创建系统的托盘对象trayIcon
*/
public void createTrayIcon() {
sysTray = SystemTray.getSystemTray();// 获得当前操作系统的托盘对象
icon = new ImageIcon("1.gif");// 托盘图标
PopupMenu popupMenu = new PopupMenu();// 弹出菜单
MenuItem mi = new MenuItem("弹出");
MenuItem exit = new MenuItem("关闭");
popupMenu.add(mi);
popupMenu.add(exit);
// 为弹出菜单项添加事件
mi.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent e) {
setVisible(true);
sysTray.remove(trayIcon);
}
});
exit.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent e) {
System.exit(0);
}
});
trayIcon = new TrayIcon(icon.getImage(), "闪动托盘", popupMenu);
} /**
* @param args
*/
public static void main(String[] args) {
TestTray testTray = new TestTray();
} /*
* 线程控制闪动 (non-Javadoc)
*
* @see java.lang.Runnable#run()
*/
public void run() {
while (num >= 0) {
this.trayIcon.setImage(new ImageIcon("").getImage());
try {
Thread.sleep(300);
} catch (InterruptedException e) {
e.printStackTrace();
}
this.trayIcon.setImage(icon.getImage());
try {
Thread.sleep(300);
} catch (InterruptedException e) {
e.printStackTrace();
}
num--;
}
}}
招聘人数: 若干名 薪资待遇: 工作每天3-5小时,100-200元/天工资每日支付;
岗位描述: 负责公司所要求的信息回复工作(有内容样版),工作地点不限,专兼职均可!
应聘要求: 上网熟练,平均每天工作投入约3小时,具体根据效率自定; 学历不限,在
职或学生皆可;勤奋,认真,有责任感;熟悉用电脑发消息的整个流程。(很简单,学一下就会!) http://www.coien-cn.info/?87586.htm