设置对话框为圆角:

//首先选择设置

JFrame.setDefaultLookAndFeelDecorated(true);

JDialog.setDefaultLookAndFeelDecorated(true);

//然后设置,其中login为登陆对话框

AWTUtilities.setWindowShape(login, new RoundRectangle2D.Double(0.0D,0.0D,login.getWidth(),login.getHeight(),15.0D,15.0D));

对话框居中:

//获取屏幕大小

Dimension screenSize=Toolkit.getDefaultToolkit().getScreenSize();

//设置位置,WIDTH、HEIGHT分别为对话框的宽高

int HEIGHT=200;

int WIDTH=300;

setLocation(screenSize.width/2-WIDTH/2, screenSize.height/2-HEIGHT/2);

初始化系统托盘:

//系统托盘

private SystemTray tray = null;

//托盘图标

private TrayIcon trayIcon = null;

//托盘图标图像

private Image icon = null;

//图标图像路径

private final String ICON_PATH = "icons/app.png";

//系统名称

private String SYSTEM_NAME = "提醒助手";

tray = SystemTray.getSystemTray();

ImageIcon imageIcon = new ImageIcon(this.getClass().getClassLoader().getResource(ICON_PATH));  //获得托盘显示图标

icon=imageIcon.getImage(); //获得Image对象

trayIcon=new TrayIcon(icon,SYSTEM_NAME,trayMenu);

trayIcon.setImageAutoSize(true);

trayIcon.setToolTip(SYSTEM_NAME);

try{

tray.add(trayIcon);

}catch(AWTException e){

System.out.println("托盘初始化出现故障:" + e.getMessage());

e.printStackTrace();

}

消息提醒框显示在右下角:

private JFrame jf;

//JPanel

private JPanel jp;

//超链接

private LinkLabel lb;

//控制窗口弹出效果的参数

private Integer screenWidth;  // 屏幕宽度

private Integer screenHeight; // 屏幕高度

private Integer windowWidth = 300; // 设置提示窗口宽度

private Integer windowHeight = 150; // 设置提示窗口高度

private Integer bottmToolKitHeight; // 底部任务栏高度,如果没有任务栏则为零

private Integer stayTime = 5000; // 提示框停留时间

private Integer x; // 窗口起始X坐标

private Integer y; // 窗口起始Y坐标

//控制窗口弹出效果

bottmToolKitHeight = Toolkit.getDefaultToolkit().getScreenInsets(jf.getGraphicsConfiguration()).bottom;

Dimension dimension = Toolkit.getDefaultToolkit().getScreenSize();

screenWidth = dimension.width;

screenHeight = dimension.height;

x = screenWidth - windowWidth;

y = screenHeight;

jf.setLocation(x, y - bottmToolKitHeight - windowHeight);

jf.setSize(windowWidth, windowHeight);

jf.setDefaultCloseOperation(WindowConstants.DISPOSE_ON_CLOSE);

消息列表,用JTable实现:

private JTable jTable = null;

//初始化jtable的数据

Object rowData[][] = new Object[list.size()][4];

for(int i=0;i

Message msg = list.get(i);

rowData[i][0]= msg.getMsg();

rowData[i][1]= msg.getTime();

rowData[i][2]= msg.getMsgUrl();

rowData[i][3]= msg.getFrom();

}

Object[] columnNames = new Object[]{"消息内容","接收时间","链接","发送者"};

//设置jtable不可编辑

TableModel tableModel = new DefaultTableModel(rowData,columnNames){

public boolean isCellEditable(int rowIndex,int columnIndex){

return false;

}

};

//设置表格单元格当鼠标停留时悬浮显示全部内容

jTable = new JTable(tableModel){

@Override

public String getToolTipText(MouseEvent event) {

int row = jTable.rowAtPoint(event.getPoint());

int col = jTable.columnAtPoint(event.getPoint());

String tip=null;

if(row>-1 && col>-1){

Object value = jTable.getValueAt(row, col);

if(null!=value && !"".equals(value)){

tip = value.toString();

}

}

return tip;

}

};

int width = 125;

//设置列宽

TableColumnModel tcm = jTable.getColumnModel();

TableColumn tc1 = tcm.getColumn(1);

tc1.setPreferredWidth(width);

tc1.setMaxWidth(width);

tc1.setMinWidth(width);

// tc1.setResizable(false);

TableColumn tc = tcm.getColumn(2);

tc.setMaxWidth(width);

tc.setMinWidth(width);

tc.setPreferredWidth(width);

// tc.setResizable(false);

int width1= 100;

TableColumn tc3 = tcm.getColumn(3);

tc3.setMaxWidth(width1);

tc3.setMinWidth(width1);

tc3.setPreferredWidth(width1);

// tc3.setResizable(false);

java 托盘开发_java托盘开发界面记录相关推荐

  1. java web试题_Java web开发经典面试题汇总(内附答案详解)

    原标题:Java web开发经典面试题汇总(内附答案详解) 1.说出Servlet 的生命周期,并说出Servlet 和CGI 的区别? 答:Web 容器加载Servlet 并将其实例化后,Servl ...

  2. java实践项目_Java项目开发实践

    第章项目开发基础() 项目开发实训目标() 实训知识目标() 实训能力目标() 实训素质目标() 项目开发技术() 图形用户界面编程技术() 输入输出编程技术() 网络编程技术() 数据结构编程技术( ...

  3. java jni开发_Java JNI开发实践记录

    当使用到JNI的时候,基本可以肯定Java的平台移植性注定减弱,接下来记录一次使用Java JNI开发的经历. 关于Java JNI的相关资料参见: 下面是使用JNI常见三种场景: 1.在Java应用 ...

  4. java工程窗口程序_java工程开发之图形化界面之(第二课)

    上一节主要是讨论小的应用程序,在这里我们将采用一种全新的方式来重新编写它. 在这里我们注重关注JFrame和JOptionPane.这些类提供了在JAVA应用程序使用图形的方法以及在JAVA程序中对I ...

  5. java自动化开发_Java自动化开发指南

    一.背景 在Java web开发中,虽然Spring boot已经帮助我们简化了很多工作,但项目中庞杂的业务仍然需要自己去编写较多的 entity,vo,Mapper,Service, Control ...

  6. java 记事本 新建_java记事本开发

    今天我想要分享的是一个用java写的一个记事本程序.我知道现在市面上有各种各样的记事本了,但是我发现有的写的功能不够完善,或者是代码层次结构不够清晰,有的甚至看了之后云里雾里的,有的还不乏了非常明显的 ...

  7. web开发的java语言步骤_java web开发入门一(servlet和jsp)基于eclispe

    servlet 用java语言开发动态资源网站的技术,在doGet方法中拼接显示html,在doPost方法中提交数据.类似于.net的ashx技术. servlet生成的class文件存放在tomc ...

  8. java系统教程_Java 教程(开发环境配置+基础语法)

    Java 开发环境配置 在本章节中我们将为大家介绍如何搭建Java开发环境. window系统安装java 下载JDK 首先我们需要下载java开发工具包JDK,下载地址:http://www.ora ...

  9. java电话计费系统_java 连接数据库开发的电话计费管理系统

    [实例简介] 这是java连接数据库 sql 2000 开发的电话计费管理系统 里面运用的还是比较方便的虽然有一点小问题 [实例截图] [核心代码] 电话计费系统 └── 电话计费系统 ├── all ...

最新文章

  1. 半轴CVJ(constant velocity joint)
  2. Azkaban安装部署,配置文件配置,启动等
  3. 大端 小端 原码 反码 补码 及内存中的表现
  4. ejb模式_EJB的完整形式是什么?
  5. 前端笔记-thymeleaf获取及回显input标签type=date
  6. MacBook写代码真香!包邮送一台!
  7. 54 MM配置-评估和科目设置-将评估分为群集分组
  8. Android studio设置代码自动提示
  9. [转载] PyTorch简介
  10. ubuntu 16.04 远程挂载硬盘
  11. HDU 2063 过山车
  12. Centos7 Zabbix监控部署
  13. 分析日志的工具: 日志易
  14. maven 打包指定依赖包_maven 打包包含依赖
  15. OC方法以及文件编译
  16. python namedtuple
  17. 基于springboot小型车队管理系统毕业设计源码
  18. http://wenku.baidu.com/view/1ee32e3a87c24028915fc362.html?re=view###
  19. 编写爬取糗事百科信息爬虫代码学习笔记
  20. 次世代游戏美术模型的特性和制作流程

热门文章

  1. python常用开放工具_python学习笔记16-各种模块和开放工具收集整理
  2. python距离向量路由算法_互联网中常用路由协议,路由协议基础,一分钟了解下...
  3. eclipse中文乱码解决_Stata中文乱码顽疾解决方法-一行命令
  4. Android:浏览器跳转
  5. matlab 三维点 边界曲面,不用matlab如何从散点数据绘制极坐标三维曲面图?
  6. Android Studio 导入 so 简明教程:通过一个示例让你理解整个过程
  7. 可能是最好的单例模式
  8. 笔记11:GDI 制作数字验证码
  9. HDU ACM 1224 Free DIY Tour (SPFA)
  10. 在不停止mysql复制主服务器的情况下,配置一个mysql复制从服务器