java写桌面程序
一:使用java swing开发窗口程序
简述:
1.文章内容主要是使用java swing类库开发一个小的窗口程序,然后使用exe4j发布成exe可以安装的程序,让初学者对使用java来做pc软件开发有个整理的认识。
2.项目存在问题:运行后是这个样
,自己调整下窗口大小就行了。(我设置过窗口大小,但是没有起作用,后面会排查下原因)
1.环境安装,建议使用jdk1.8;(总之jdk版本要和exe4j版本保持一致)
2.eclipse中新建项目:

3.新建java项目,项目名自己随意

4.新建一个包,然后新建一个java类

5.具体代码如下(不同的功能可以自己再写详细代码):
public class HelloWorldSwing {
/**{
* 创建并显示GUI。出于线程安全的考虑,
* 这个方法在事件调用线程中调用。
*/
private static void createAndShowGUI() {
// 确保一个漂亮的外观风格
JFrame.setDefaultLookAndFeelDecorated(true);
// 创建及设置窗口
JFrame frame = new JFrame("HelloWorldSwing");
frame.setLocation(1000, 500);//设置窗口的位置
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
frame.setSize(200, 200);//设置窗口的大小
// 添加 "Hello World" 标签
JLabel label = new JLabel("Hello World");
//label.setSize(1000, 1000);
frame.getContentPane().add(label);
// 显示窗口
frame.pack();
frame.setVisible(true);
}
public static void main(String[] args) {
// 显示应用 GUI
javax.swing.SwingUtilities.invokeLater(new Runnable() {
public void run() {
createAndShowGUI();
}
});
}
}
6:代码中右键 Run as -->Java Application

7.java项目导出

8.

9.

10.打包出来的结果如下:

二:使用exe4j把从eclipse导出的jar转换成可执行的exe安装程序
1.下载exe4j (去exe4j的官网下载exe4j,注意exe4j的版本要支持自己开发环境的jdk版本)
2.使用exe4j把 tt.jar转换成tt.exe,转后的结果如下(程序的图标可以自己设置,然后名字也可以修改):

3.双击启动程序后的结果:
3.1我本地会报一个错误,是因为没有注册exe4j,不影响使用(也可以网上搜索个注册码解决该问题)

3.2具体结果:

备注:
1.exe4j的使用教程参考
http://blog.csdn.net/qq_20473985/article/details/53186216
2.exe4j注册码解决参考
http://cache.baiducontent.com/c?m=9d78d513d9851bf419fa940f5a5c80375e12d3336280c7150e91c00984642a100731b0fd70740704a28027215bb8492db9ac2172465464e4c58fdb0c86e6ce3f2ff96363305ddd1c4ec419de961232c151c710beb81897bca826d4ee8cdc851215884404099deddb045d41dd6f87556abff58e48620e4de5fa3012ae056a6882731eeb12eee7466c0581a1dd5e4dc028d36312c7e93efb2912c249e24045&p=877dc64ad49c1aff57ee9578174ec6&newp=9c6ad415d9c040a911fccb2d021496231610db2151d6d7126b82c825d7331b001c3bbfb423251000d0c6766206ae4c59e8f634753d092ba3dda5c91d9fb4c57479c1366b&user=baidu&fm=sc&query=this+executable+was+created+with+an+evaluation+version+of+exe4j&qid=a15589a90000e298&p1=1
3.代码参考
http://www.runoob.com/w3cnote/java-swing-demo-intro.html
java写桌面程序的更多相关文章
- Java开发桌面程序学习(一)——JavaFx+Jfoenix初始以及搭建
Java开发桌面程序学习(一)--JavaFx+Jfoenix初始以及搭建 前言 想做一个Java的桌面程序,但是,使用原生的Swing感觉又十分麻烦,那个布局都是拿代码设置,看着十分的乱,偶然的情况 ...
- [转载]为什么用Java开发桌面程序的比较少
这个是本人这几天用javafx开发桌面程序时候想到的,因为虽然javafx比C#之类的确实坑多不少,但是习惯了之后也还行,而且它的一次编译.各处使用真的深得我心.但为什么不流行呢: 作者:bell 来 ...
- 终于解决了用JAVA写窗口程序在不同的windows界面下的显示保持一致。
好像是两三年前的时候发现这个问题. 由于在windows经典界面与windows xp界面下,窗口的标题栏的高度是不一样的. 所以我们在用Java写GUI程序的时候,会遇到一个问题. 当我把一个JFr ...
- Java开发桌面程序学习(四)——常用应用布局模板和简单分析
布局 前言 刚开始的时候,不知道使用什么布局,发现SceneBuilder其实有8.5版本的,里面就是有提供一个简单的桌面程序模板,8.5可以去官网下载,不过网速好像有点慢,慢慢等吧,官网下载地址 布 ...
- Java开发桌面程序学习(二)————fxml布局与控件学习
JavaFx项目 新建完项目,我们的项目有三个文件 Main.java 程序入口类,载入界面并显示 Controller.java 事件处理,与fxml绑定 Sample.fxml 界面 sample ...
- 如何让Java写的程序,脱离Eclipse在别人的电脑上运行?
Java程序运行,离不开JRE. 将JRE文件夹拷贝出来, 将编写程序的bin文件夹拷贝出来, 再编写一个bat文件. start jre\bin\javaw.exe -cp .\bin\ -Djav ...
- Java开发桌面程序学习(九)——JavaFxTemplate JavaFx模版 更简单进行JavaFx程序开发
JavaFxTemplate 使用说明 项目基于maven,请确保maven配置成功,否则,可能会出现问题 项目内置了commons-io的jar包,Jfoenix的jar包以及常用的工具类JFxUt ...
- Java开发桌面程序学习(七)——ImageView设置图片以及jar包读取fxml文件
ImageView设置图片 JavaFx的ImageView,设置图片不能直接通过属性设置,只能通过代码来设置 ImageView设置图片 首先,我们让fxml对应的那个controller的java ...
- Java写诗程序
import java.util.Random; public class test_word { public static void main(String[] args) { System.ou ...
随机推荐
- 利用图片的灰度平均值来进行分类实现手写图片识别(数据集50000张图片)——Jason niu
from collections import defaultdict import mnist_loader def main(): training_data, validation_data, ...
- HierarchicalClustering:编写HierarchicalClustering层次聚类算法—Jason niu
from numpy import * class cluster_node: def __init__(self,vec,left=None,right=None,distance=0.0,id=N ...
- Javascript的DOM总结
Javascript的DOM总结 DOM DOM 是 W3C(万维网联盟)的标准.DOM 定义了访问 HTML 和 XML 文档的标准: "W3C 文档对象模型(DOM)是中立于平台和语言的 ...
- poj3311
poj3311我写的第一篇状压dp,调试了好久23333,其实状压就是二进制结合位运算,把整体的状态用二进制来表示,一般是0/1,用没用过或者走没走没走过的问题,其实这种思想在搜索中也有涉及过,与dp ...
- Intellij IDEA 解决 Maven 依赖下载慢的问题
最近用 IDEA 导入 Hadoop 源码, 但下载依赖特别慢.导致经常需要重启 IDEA 并且下载的过程非常艰难, 网上找了一些方法,各种尝试,终于解决了这个问题.本篇文章总结最关键的两点,希望能帮 ...
- linux 学习笔记 查看端口
查看端口 #lsof -i :端口号 |\根据端口号查看进程信息 例如:#lsof -i:8080 command pid user fd type device size node java ...
- php error_log() 范例
<?php// 如果无法连接到数据库,发送通知到服务器日志if (!Ora_Logon($username, $password)) { error_log("Oracle da ...
- 在mongoose中使用正则,参数为变量时的写法
const word = ctx.params.word userModel.find({"name":{$regex: eval(`/${word}/ig`)}}) 如果mong ...
- MySQL(五)
关系 创建成绩表scores,结构如下 id 学生 科目 成绩 思考:学生列应该存什么信息呢? 答:学生列的数据不是在这里新建的,而应该从学生表引用过来,关系也是一条数据:根据范式要求应该存储学生的编 ...
- ORM字段操作
django orm 建表字段 在django modle 中,我们定义的类,他的对象就是数据库表中的一行数据!!! django orm 基础 一:modle的各个字段: 在python中以code ...