Java界面托盘图标实现

主要实现如图第一排第一个(图片自己选取)


核心代码如图


附加代码:

import java.awt.AWTException;
import java.awt.Image;
import java.awt.SystemTray;
import java.awt.Toolkit;
import java.awt.TrayIcon;


import javax.swing.ImageIcon;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JPanel;

		public class Test extends JFrame {
			public Test() {
				  Interface();
				  //获取图片(src/1.jpg)这个图片放在src目录下
				  Image logo = Toolkit.getDefaultToolkit().getImage("src/1.jpg");
				  //获取图片的路径
				  this.setIconImage(logo);
				  //创建一个托盘图标(任务栏右下角显示图标)
				  TrayIcon icon = new TrayIcon(logo, null, null);
				  //关键点,设置托盘图标的自适应属性,这样才能在系统显示托盘处正常显示出需要的图片
				  icon.setImageAutoSize(true);
				  //获取表示桌面托盘区的 SystemTray 实例
				  SystemTray systemTray = SystemTray.getSystemTray();
				  try {
					  //将 icon 添加到 SystemTray
					systemTray.add(icon);
				} catch (AWTException e) {
					// TODO Auto-generated catch block
					e.printStackTrace();
				}
		  
		  
			}
			private void Interface() {
				//设置标题  
		       this.setTitle("背景图");
		        //设置大小  
		        this.setSize(200,200);  
		        //设置位置  
		        this.setLocation(200, 50);  
		        //背景图片的路径。
		        String path = "src/1.jpg";  
		        // 背景图片  
		        ImageIcon background = new ImageIcon(path);  
		        // 把背景图片显示在一个标签里面  
		        JLabel label = new JLabel(background);  
		        // 把标签的大小位置设置为图片刚好填充整个面板  
		        label.setBounds(0, 0, this.getWidth(), this.getHeight());  
		        // 把内容窗格转化为JPanel,否则不能用方法setOpaque()来使内容窗格透明  
		        JPanel imagePanel = (JPanel) this.getContentPane();  
		        imagePanel.setOpaque(false);  
		        // 把背景图片添加到分层窗格的最底层作为背景  
		        this.getLayeredPane().add(label, new Integer(Integer.MIN_VALUE));  
		        //设置可见  
		        this.setVisible(true);  
		        //点关闭按钮时退出  
		        this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);  
		        //将界面居中
		        this.setLocationRelativeTo(null);
		        //界面框不允许改变
		        this.setResizable(false);
			}
			public static void main(String[] args) {
				// TODO Auto-generated method stub
				new Test();
			}
}


  • 3
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值