编写一个JAVA桌面程序,该怎么开始 想用java开发一个桌面程序,访问在服务器的数据库。偶用MYECLIPSE开发,可没有VC编辑器那样可以拖拉按钮等图标,想问问:如纯粹的JAVA代码,该怎么进行,有这样的例子给个吗另外,用什么办法可以把java的程序生成exe文件,拷贝到其他机器上,不用安装JDK就可以运行呢谢谢 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 另外,用什么办法可以把java的程序生成exe文件,拷贝到其他机器上,不用安装JDK就可以运行呢 做个bat文件 桌面程序建议用netbeans或者jbuilder开发从awt或者swing开始吧 是啊,现在都用JAVA中的javax.swing来做界面.界面吗有好多种,可以用JFrame,JPane,Container..,你可以对各个按钮,文本框,通过setBounds(int,int,int,int);当然出可以给按钮设置颜色,有前景色和背景色..自己去看看API了,里面有很多的方法介绍.这前我一直在做数据库的课程设计,然后用JAVA做界面,发了好长的时间.. myeclipse有个UI开发插件,你更新下就行了。和别的可视化开发一样的。 拖拉按钮等图标来做GUI用netBeans等开发工具就可以另外,程序的运行必须有JRE才能运行,但可以与程序打包在一起,安装时自动安装JRE netbeans中开发桌面应用程序就可以像vc中一样啦,而且更好用呢.基础的话,往下搜下swing的例子,一大堆啦. 给你个文本编辑器的例子:import java.awt.*;import java.awt.event.*;import java.io.*;import javax.swing.*;import javax.swing.text.*;//简单的文本编辑器 public class EditorDemo extends JFrame { JTextPane textPane = new JTextPane(); // 文本窗格,编辑窗口 JLabel statusBar = new JLabel(); // 状态栏 JFileChooser filechooser = new JFileChooser(); // 文件选择器 public EditorDemo() { // 构造函数 super("简单的文本编辑器"); // 调用父类构造函数 Action[] actions = // Action数组,各种操作命令 { new NewAction(), new OpenAction(), new SaveAction(), new CutAction(), new CopyAction(), new PasteAction(), new AboutAction(), new ExitAction() }; setJMenuBar(createJMenuBar(actions)); // 设置菜单栏 Container container = this.getContentPane(); // 得到容器 container.add(createJToolBar(actions), BorderLayout.NORTH); // 增加工具栏 container.add(textPane, BorderLayout.CENTER); // 增加文本窗格 container.add(statusBar, BorderLayout.SOUTH); // 增加状态栏 setSize(500, 500); // 设置窗口尺寸 setVisible(true); // 设置窗口可视 setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); // 关闭窗口时退出程序 } private JMenuBar createJMenuBar(Action[] actions) { // 创建菜单栏 JMenuBar menubar = new JMenuBar(); // 实例化菜单栏 JMenu menuFile = new JMenu("文件"); // 实例化菜单 JMenu menuEdit = new JMenu("编辑"); JMenu menuAbout = new JMenu("帮助"); menuFile.add(new JMenuItem(actions[0])); // 增加新菜单项 menuFile.add(new JMenuItem(actions[1])); menuFile.add(new JMenuItem(actions[2])); menuFile.add(new JMenuItem(actions[7])); menuEdit.add(new JMenuItem(actions[3])); menuEdit.add(new JMenuItem(actions[4])); menuEdit.add(new JMenuItem(actions[5])); menuAbout.add(new JMenuItem(actions[6])); menubar.add(menuFile); // 增加菜单 menubar.add(menuEdit); menubar.add(menuAbout); return menubar; // 返回菜单栏 } private JToolBar createJToolBar(Action[] actions) { // 创建工具条 JToolBar toolBar = new JToolBar(); // 实例化工具条 for (int i = 0; i < actions.length; i++) { JButton bt = new JButton(actions[i]); // 实例化新的按钮 bt.setRequestFocusEnabled(false); // 设置不需要焦点 toolBar.add(bt); // 增加按钮到工具栏 } return toolBar; // 返回工具栏 } class NewAction extends AbstractAction { // 新建文件命令 public NewAction() { super("新建"); } public void actionPerformed(ActionEvent e) { textPane.setDocument(new DefaultStyledDocument()); // 清空文档 } } class OpenAction extends AbstractAction { // 打开文件命令 public OpenAction() { super("打开"); } public void actionPerformed(ActionEvent e) { int i = filechooser.showOpenDialog(EditorDemo.this); // 显示打开文件对话框 if (i == JFileChooser.APPROVE_OPTION) { // 点击对话框中打开选项 File f = filechooser.getSelectedFile(); // 得到选择的文件 try { InputStream is = new FileInputStream(f); // 得到文件输入流 textPane.read(is, "d"); // 读入文件到文本窗格 } catch (Exception ex) { ex.printStackTrace(); // 输出出错信息 } } } } class SaveAction extends AbstractAction { // 保存命令 public SaveAction() { super("保存"); } public void actionPerformed(ActionEvent e) { int i = filechooser.showSaveDialog(EditorDemo.this); // 显示保存文件对话框 if (i == JFileChooser.APPROVE_OPTION) { // 点击对话框中保存按钮 File f = filechooser.getSelectedFile(); // 得到选择的文件 try { FileOutputStream out = new FileOutputStream(f); // 得到文件输出流 out.write(textPane.getText().getBytes()); // 写出文件 } catch (Exception ex) { ex.printStackTrace(); // 输出出错信息 } } } } class ExitAction extends AbstractAction { // 退出命令 public ExitAction() { super("退出"); } public void actionPerformed(ActionEvent e) { System.exit(0); // 退出程序 } } class CutAction extends AbstractAction { // 剪切命令 public CutAction() { super("剪切"); } public void actionPerformed(ActionEvent e) { textPane.cut(); // 调用文本窗格的剪切命令 } } class CopyAction extends AbstractAction { // 拷贝命令 public CopyAction() { super("拷贝"); } public void actionPerformed(ActionEvent e) { textPane.copy(); // 调用文本窗格的拷贝命令 } } class PasteAction extends AbstractAction { // 粘贴命令 public PasteAction() { super("粘贴"); } public void actionPerformed(ActionEvent e) { textPane.paste(); // 调用文本窗格的粘贴命令 } } class AboutAction extends AbstractAction { // 关于选项命令 public AboutAction() { super("关于"); } public void actionPerformed(ActionEvent e) { JOptionPane.showMessageDialog(EditorDemo.this, "简单的文本编辑器演示"); // 显示软件信息 } } public static void main(String[] args) { new EditorDemo(); }}用MYECLIPSE的导出功能,导出成jar文件,安装JDK的机子就可以直接运行了。把java的程序生成exe文件,拷贝到其他机器上,不用安装JDK就可以运行的话,去看其他贴,看如何把jar文件变成exe文件就可以啦。 做成JAR文件就可以了,可以双击执行,它其实是一种压缩文件包,又不改变JAVA的可移植性多好啥,自个网上查下不难做几句话也说不清 Jar2Exe 看到这个名字应该就知道是什么工具了吧·· 好像有个 Jmooth至于绑一个jre, 这个……JVM本身也不大,但是带上类库就难说了~网上有不少轻量级jre,但是我没见过带GUI库的~ 顶多带点基本的常用类库~ 打包成jar的格式好像就可以吧 我以前也花了很多时间去把jar文件弄成exe文件,但是弄了之后觉得没说明必要,因为bat格式就挺好的。界面的花,我想简单的话自己编写下就好,不用研究的很深,而且MyEclipse也支持可视化开发SWT和SWING。 日期相减问题 web应用程序客户端离线判断功能 关于interface问题 快来找错呀 关于RandomAccessFile类输出问题? 需要写:import java.lang.System吗? java中怎样得到一个对象的大小?? 求救!高手帮忙 110 dos下运行java ex1时出现错误,急等 有几种创建对象的方法 请问java如何打开一个txt文件,写入一行内容,再关闭。谢谢
做个bat文件
界面吗有好多种,可以用JFrame,JPane,Container..,你可以对各个按钮,文本框,通过setBounds(int,int,int,int);当然出可以给按钮设置颜色,有前景色和背景色..自己去看看API了,里面有很多的方法介绍.这前我一直在做数据库的课程设计,然后用JAVA做界面,发了好长的时间..
另外,程序的运行必须有JRE才能运行,但可以与程序打包在一起,安装时自动安装JRE
基础的话,往下搜下swing的例子,一大堆啦.
import java.awt.*;
import java.awt.event.*;
import java.io.*;
import javax.swing.*;
import javax.swing.text.*;//简单的文本编辑器 public class EditorDemo extends JFrame {
JTextPane textPane = new JTextPane(); // 文本窗格,编辑窗口 JLabel statusBar = new JLabel(); // 状态栏 JFileChooser filechooser = new JFileChooser(); // 文件选择器 public EditorDemo() { // 构造函数
super("简单的文本编辑器"); // 调用父类构造函数 Action[] actions = // Action数组,各种操作命令
{
new NewAction(),
new OpenAction(),
new SaveAction(),
new CutAction(),
new CopyAction(),
new PasteAction(),
new AboutAction(),
new ExitAction() }; setJMenuBar(createJMenuBar(actions)); // 设置菜单栏
Container container = this.getContentPane(); // 得到容器
container.add(createJToolBar(actions), BorderLayout.NORTH); // 增加工具栏
container.add(textPane, BorderLayout.CENTER); // 增加文本窗格
container.add(statusBar, BorderLayout.SOUTH); // 增加状态栏 setSize(500, 500); // 设置窗口尺寸
setVisible(true); // 设置窗口可视
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); // 关闭窗口时退出程序
} private JMenuBar createJMenuBar(Action[] actions) { // 创建菜单栏
JMenuBar menubar = new JMenuBar(); // 实例化菜单栏
JMenu menuFile = new JMenu("文件"); // 实例化菜单
JMenu menuEdit = new JMenu("编辑");
JMenu menuAbout = new JMenu("帮助");
menuFile.add(new JMenuItem(actions[0])); // 增加新菜单项
menuFile.add(new JMenuItem(actions[1]));
menuFile.add(new JMenuItem(actions[2]));
menuFile.add(new JMenuItem(actions[7]));
menuEdit.add(new JMenuItem(actions[3]));
menuEdit.add(new JMenuItem(actions[4]));
menuEdit.add(new JMenuItem(actions[5]));
menuAbout.add(new JMenuItem(actions[6]));
menubar.add(menuFile); // 增加菜单
menubar.add(menuEdit);
menubar.add(menuAbout);
return menubar; // 返回菜单栏
} private JToolBar createJToolBar(Action[] actions) { // 创建工具条
JToolBar toolBar = new JToolBar(); // 实例化工具条
for (int i = 0; i < actions.length; i++) {
JButton bt = new JButton(actions[i]); // 实例化新的按钮
bt.setRequestFocusEnabled(false); // 设置不需要焦点
toolBar.add(bt); // 增加按钮到工具栏
}
return toolBar; // 返回工具栏
} class NewAction extends AbstractAction { // 新建文件命令
public NewAction() {
super("新建");
} public void actionPerformed(ActionEvent e) {
textPane.setDocument(new DefaultStyledDocument()); // 清空文档
}
} class OpenAction extends AbstractAction { // 打开文件命令
public OpenAction() {
super("打开");
} public void actionPerformed(ActionEvent e) {
int i = filechooser.showOpenDialog(EditorDemo.this); // 显示打开文件对话框
if (i == JFileChooser.APPROVE_OPTION) { // 点击对话框中打开选项
File f = filechooser.getSelectedFile(); // 得到选择的文件
try {
InputStream is = new FileInputStream(f); // 得到文件输入流
textPane.read(is, "d"); // 读入文件到文本窗格
} catch (Exception ex) {
ex.printStackTrace(); // 输出出错信息
}
}
}
} class SaveAction extends AbstractAction { // 保存命令
public SaveAction() {
super("保存");
} public void actionPerformed(ActionEvent e) {
int i = filechooser.showSaveDialog(EditorDemo.this); // 显示保存文件对话框
if (i == JFileChooser.APPROVE_OPTION) { // 点击对话框中保存按钮
File f = filechooser.getSelectedFile(); // 得到选择的文件
try {
FileOutputStream out = new FileOutputStream(f); // 得到文件输出流
out.write(textPane.getText().getBytes()); // 写出文件
} catch (Exception ex) {
ex.printStackTrace(); // 输出出错信息
}
}
}
} class ExitAction extends AbstractAction { // 退出命令
public ExitAction() {
super("退出");
} public void actionPerformed(ActionEvent e) {
System.exit(0); // 退出程序
}
} class CutAction extends AbstractAction { // 剪切命令
public CutAction() {
super("剪切");
} public void actionPerformed(ActionEvent e) {
textPane.cut(); // 调用文本窗格的剪切命令
}
} class CopyAction extends AbstractAction { // 拷贝命令
public CopyAction() {
super("拷贝");
} public void actionPerformed(ActionEvent e) {
textPane.copy(); // 调用文本窗格的拷贝命令
}
} class PasteAction extends AbstractAction { // 粘贴命令
public PasteAction() {
super("粘贴");
} public void actionPerformed(ActionEvent e) {
textPane.paste(); // 调用文本窗格的粘贴命令
}
} class AboutAction extends AbstractAction { // 关于选项命令
public AboutAction() {
super("关于");
} public void actionPerformed(ActionEvent e) {
JOptionPane.showMessageDialog(EditorDemo.this, "简单的文本编辑器演示"); // 显示软件信息
}
} public static void main(String[] args) {
new EditorDemo();
}
}用MYECLIPSE的导出功能,导出成jar文件,安装JDK的机子就可以直接运行了。把java的程序生成exe文件,拷贝到其他机器上,不用安装JDK就可以运行的话,去看其他贴,看如何把jar文件变成exe文件就可以啦。
几句话也说不清
看到这个名字应该就知道是什么工具了吧··
至于绑一个jre, 这个……JVM本身也不大,但是带上类库就难说了~
网上有不少轻量级jre,但是我没见过带GUI库的~ 顶多带点基本的常用类库~
界面的花,我想简单的话自己编写下就好,不用研究的很深,而且MyEclipse也支持可视化开发SWT和SWING。