社区
Java SE
帖子详情
javax.swing.swingUtilities.invokeLater方法
爱学习的东方人
2014-05-11 12:13:33
在编写GUI程序界面时,总会有这么一句,在主函数下面
"
javax.swing.swingUtilities.invokeLater(new Runnable(){
public void run(){
...}
});
"这句话是什么意思,还有这个javax.swing.swingUtilities.invokeLater方法在什么情况下使用的?
...全文
159
1
打赏
收藏
javax.swing.swingUtilities.invokeLater方法
在编写GUI程序界面时,总会有这么一句,在主函数下面 " javax.swing.swingUtilities.invokeLater(new Runnable(){ public void run(){ ...} }); "这句话是什么意思,还有这个javax.swing.swingUtilities.invokeLater方法在什么情况下使用的?
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
1 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
alan19931103
2014-05-11
打赏
举报
回复
把一个任务添加到事件委派线程中
Swing
线程之
Swing
Utilities
invoke
Later
docx
Swing
线程之
Swing
Utilities
invoke
Later
docx
贝叶斯主观推理算法
java
源码
package subjectivebayes; import
java
.awt.Toolkit; import
java
x.
swing
.
Swing
Utilities
; import
java
x.
swing
.UIManager; import
java
.awt.Dimension; /** * Title: * * Description: * * Copyright: Copyright (c) 2010 * * Company: * * @author not attributable * @version 1.0 */ public class MyApp { boolean packFrame = false; /** * Construct and show the application. */ public MyApp() { EnterBayes frame = new EnterBayes(); // Validate frames that have preset sizes // Pack frames that have useful preferred size info, e.g. from their layout if (packFrame) { frame.pack(); } else { frame.validate(); } // Center the window Dimension screenSize = Toolkit.getDefaultToolkit().getScreenSize(); Dimension frameSize = frame.getSize(); if (frameSize.height > screenSize.height) { frameSize.height = screenSize.height; } if (frameSize.width > screenSize.width) { frameSize.width = screenSize.width; } frame.setLocation((screenSize.width - frameSize.width) / 2, (screenSize.height - frameSize.height) / 2); frame.setVisible(true); } /** * Application entry point. * * @param args String[] */ public static void main(String[] args) {
Swing
Utilities
.
invoke
Later
(new Runnable() { public void run() { try { UIManager.setLookAndFeel(UIManager. getSystemLookAndFeelClassName()); } catch (Exception exception) { exception.printStackTrace(); } new MyApp(); } }); } }
java
课程设计学生信息管理系统(1).doc
1. 需求分析 为了实现对学生信息的统一管理及操作,及时对学生信息进行修改、增添和删除。 2. 总体设计 1. 系统主要功能:对学生的信息进行管理,如:插入学生信息、删除学生信息、修改学生 信息、查询学生信息。 2. 技术背景:本项目使用
Java
Swing
技术,数据库采用SQLServer 2000,本项目的开发和测试都是在Windows平台下进行的,但由于
Java
的跨平台性,本 系的移植性很强,也适用于其它主流的操作系统。 3. 类图 图3.1类图 3. 详细设计 1. 用例图 用例图 功能级用例描述——添加学生信息 "描述项 "说明 " "用例名称 "添加学生信息 " "用例简述 "管理员添加学生的基本信息 " "用例图 " " "前置条件 "管理员已成功登入 " "后置条件 "学生信息被添加 " "基本操作流程 "1输入"学生姓名","学生学号","学生年龄",选择"学 " " "生性别" " " "2点击"提交"按钮 " " "3 "成功添加"点击"确定"或关闭窗口则返回主页面 " "替代流程 "无 " 功能级用例描述——查询学生信息 "描述项 "说明 " "用例名称 "查询学生信息 " "用例简述 "管理员查询学生的基本信息 " "用例图 " " "前置条件 "管理员已成功添加学生信息并成功登入查询页面 " "后置条件 "学生信息被查询 " "基本操作流程 "1输入需查找的"学生学号" " " "2点击"确定"按钮 " " "3 点击"返回"或关闭窗口则返回主页面 " "替代流程 "无 " 功能级用例描述——修改学生信息 "描述项 "说明 " "用例名称 "修改学生信息 " "用例简述 "管理员修改学生的基本信息 " "用例图 " " "前置条件 "管理员已成功查询所需修改学生信息 " "后置条件 "学生信息被修改 " "基本操作流程 "1输入需修改的"学生学号" 2点击"修改"按钮 " " "3 点击"返回"或关闭窗口则返回主页面 " "替代流程 "无 " 功能级用例描述——删除学生信息 "描述项 "说明 " "用例名称 "删除学生信息 " "用例简述 "管理员删除学生的基本信息 " "用例图 " " "前置条件 "管理员已成功查询所需修改学生信息 " "后置条件 "学生信息被删除 " "基本操作流程 "1输入需删除的"学生学号" " " "2点击"删除"按钮 " " "3 "删除成功"点击"确定"或关闭窗口则返回主页面 " "替代流程 "无 " 2、程序主要代码的实现 2.1StudentJFrame类,第一个界面(主界面)的建立 "package jframe; " "import
java
.awt.BorderLayout; " "import
java
.awt.event.*; " "public class StudentJFrame extends
java
x.
swing
.JFrame { " "private JPanel titlePanel; " "private JLabel titleLabel; " "private JButton jButton1; " "private JButton jButton4; " "private JButton jButton3; " "private JButton jButton2; " "private JPanel mainPanel; " "public static void main(String[] args) { " "
Swing
Utilities
.
invoke
Later
(new Runnable() { " "public void run() { " "StudentJFrame inst = new StudentJFrame(); " "inst.setLocationRelativeTo(null); " "inst.setVisible(true); " "} " "}); " "} " "public StudentJFrame() { " "super("学生选修课管理系统"); " "initGUI(); " "} " "private void initGUI() { " "try { " "setDefaultCloseOperation(WindowConstants.DISPOSE_ON_CLOSE); " "getContentPane().setForeground(new
java
.awt.Color(0,0,255)); " "{ " "//标题Panel " "titlePanel = new JPanel(); " "getContentPane().add(titlePanel, BorderLa
Java
Swing
Utilities
.
invoke
Later
(new Runnable(){})
方法
详解
Swing
Utilities
.
invoke
Later
():
invoke
Later
一般用于在线程里修改
swing
组件的外观,因为
swing
组件是非同步的,所以不能在线程中直接修改,会不同步,得不到期望的效果,所以要把修改外观的代码放在一个单独的线程中,交给
invoke
Later
:后面的程序(线程中的重写的run()
方法
及run()
方法
中的代码)和这个参数的线程(new Runnable())对象可以并行,异步地执行 import
java
x.
swing
.
Swing
Utilities
; public c
java
x.
swing
——从今天开始探究
java
x.
swing
——编译和运行
Swing
程序
一、最初的试探 如何从命令行编译和运行
Swing
应用程序。需要按照如下步骤: 安装最新版本的
Java
SE 平台(如果您尚未安装)。 创建一个使用
Swing
组件的程序。 编译程序。 运行程序。 1.1 安装最新版的
Java
SE平台 可以从http://www.oracle.com/technetwork/
java
/
java
se/downloads/index.html免费下载最新版本的 JDK。 1.2 创建一个使用
Swing
组件的程序 一个位于包start中的HelloWorld.
Java SE
62,614
社区成员
307,327
社区内容
发帖
与我相关
我的任务
Java SE
Java 2 Standard Edition
复制链接
扫一扫
分享
社区描述
Java 2 Standard Edition
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章