具体生成工具如图:

(1)

(2)

(3)

(4)

源码 :

example.java

  1. package org.qiailin.jframe;
  2. import java.awt.Container;
  3. import java.awt.Point;
  4. import java.awt.Toolkit;
  5. import java.awt.event.ActionEvent;
  6. import java.awt.event.ActionListener;
  7. import java.io.File;
  8. import javax.swing.JButton;
  9. import javax.swing.JFileChooser;
  10. import javax.swing.JFrame;
  11. import javax.swing.JLabel;
  12. import javax.swing.JOptionPane;
  13. import javax.swing.JTabbedPane;
  14. import javax.swing.JTextField;
  15. /**
  16. * 因为看很多朋友在问试用临时抽时间写了个简单的案例 源码放上去,需要的可以看看,由于时间匆忙做得很粗糙 2011年1月4日23:22:31
  17. *
  18. * @author 漆艾林 QQ 172794299 邮箱 qiailing.ok@163.com
  19. *
  20. */
  21. public class Jexample implements ActionListener {
  22. JFrame frame = new JFrame("漆艾林-Example");// 框架布局
  23. JTabbedPane tabPane = new JTabbedPane();// 选项卡布局
  24. Container con = new Container();//
  25. JLabel label1 = new JLabel("文件目录");
  26. JLabel label2 = new JLabel("选择文件");
  27. JTextField text1 = new JTextField();// TextField 目录的路径
  28. JTextField text2 = new JTextField();// 文件的路径
  29. JButton button1 = new JButton("...");// 选择
  30. JButton button2 = new JButton("...");// 选择
  31. JFileChooser jfc = new JFileChooser();// 文件选择器
  32. JButton button3 = new JButton("确定");//
  33. Jexample() {
  34. jfc.setCurrentDirectory(new File("d://"));// 文件选择器的初始目录定为d盘
  35. double lx = Toolkit.getDefaultToolkit().getScreenSize().getWidth();
  36. double ly = Toolkit.getDefaultToolkit().getScreenSize().getHeight();
  37. frame.setLocation(new Point((int) (lx / 2) - 150, (int) (ly / 2) - 150));// 设定窗口出现位置
  38. frame.setSize(280, 200);// 设定窗口大小
  39. frame.setContentPane(tabPane);// 设置布局
  40. label1.setBounds(10, 10, 70, 20);
  41. text1.setBounds(75, 10, 120, 20);
  42. button1.setBounds(210, 10, 50, 20);
  43. label2.setBounds(10, 35, 70, 20);
  44. text2.setBounds(75, 35, 120, 20);
  45. button2.setBounds(210, 35, 50, 20);
  46. button3.setBounds(30, 60, 60, 20);
  47. button1.addActionListener(this); // 添加事件处理
  48. button2.addActionListener(this); // 添加事件处理
  49. button3.addActionListener(this); // 添加事件处理
  50. con.add(label1);
  51. con.add(text1);
  52. con.add(button1);
  53. con.add(label2);
  54. con.add(text2);
  55. con.add(button2);
  56. con.add(button3);
  57. frame.setVisible(true);// 窗口可见
  58. frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);// 使能关闭窗口,结束程序
  59. tabPane.add("1面板", con);// 添加布局1
  60. }
  61. /**
  62. * 时间监听的方法
  63. */
  64. public void actionPerformed(ActionEvent e) {
  65. // TODO Auto-generated method stub
  66. if (e.getSource().equals(button1)) {// 判断触发方法的按钮是哪个
  67. jfc.setFileSelectionMode(1);// 设定只能选择到文件夹
  68. int state = jfc.showOpenDialog(null);// 此句是打开文件选择器界面的触发语句
  69. if (state == 1) {
  70. return;
  71. } else {
  72. File f = jfc.getSelectedFile();// f为选择到的目录
  73. text1.setText(f.getAbsolutePath());
  74. }
  75. }
  76. // 绑定到选择文件,先择文件事件
  77. if (e.getSource().equals(button2)) {
  78. jfc.setFileSelectionMode(0);// 设定只能选择到文件
  79. int state = jfc.showOpenDialog(null);// 此句是打开文件选择器界面的触发语句
  80. if (state == 1) {
  81. return;// 撤销则返回
  82. } else {
  83. File f = jfc.getSelectedFile();// f为选择到的文件
  84. text2.setText(f.getAbsolutePath());
  85. }
  86. }
  87. if (e.getSource().equals(button3)) {
  88. // 弹出对话框可以改变里面的参数具体得靠大家自己去看,时间很短
  89. JOptionPane.showMessageDialog(null, "弹出对话框的实例,欢迎您-漆艾琳!", "提示", 2);
  90. }
  91. }
  92. public static void main(String[] args) {
  93. new Jexample();
  94. }
  95. }

这一步注意选择main方法的类

简单的导出就OK了,打包可以用ant 以及maven ,当然这里就不介绍了 有兴趣的可以去看看

有兴趣的可以去下载

当然如果还有朋友想让你的jar文件脱离Java的坏境,可以生成exe的文件在这里可以使用exe4j

当然这里exe4j相信大家都会用吧 不会用的话 可以去谷歌。

Swing实现文件选择(目录选择)附导出的更多相关文章

  1. winform弹出文件和目录选择框

    目录选择: FolderBrowserDialog dialog = new FolderBrowserDialog(); dialog.Description = "请选择文件路径&quo ...

  2. windows目录选择 文件选择 文件保存对话框

    打开文件对话框 const char pszFilter[] = _T("EXE File (*.txt)|*.txt|All Files (*.*)|*.*||"); CFile ...

  3. C# winform 窗体弹出选择目录或文件 的对话框

    //弹出一个选择目录的对话框 privatevoid btnSelectPath_Click(object sender, EventArgs e) //弹出一个选择目录的对话框 { FolderBr ...

  4. 如何在VBS脚本中显示“选择文件对话框”或“选择目录对话框”

    .选择文件[XP操作系统,不能用于Win2000或98],使用“UserAccounts.CommonDialog”对象向用户显示一个标准的“文件打开”对话框 Set objDialog = Crea ...

  5. MFC拖拽、选择目录、遍历文件

    1.选择目录 void CDecryptFileDlg::OnBnClickedSel() { std::wstring selectedDir; WCHAR szDir[MAX_PATH]; Zer ...

  6. java 弹出选择目录框(选择文件夹),获取选择的文件夹路径

    java 弹出选择目录框(选择文件夹),获取选择的文件夹路径 java 弹出选择目录框(选择文件夹),获取选择的文件夹路径:int result = 0;File file = null;String ...

  7. Winform选择目录路径与选择文件路径

    https://blog.csdn.net/zaocha321/article/details/52528279 using System.Collections.Generic; using Sys ...

  8. WPF 获取文件夹路径,目录路径,复制文件,选择下载文件夹/目录

    private void Border_MouseLeftButtonUp_4(object sender, MouseButtonEventArgs e) { //获取项目中文件 , System. ...

  9. [MFC]选择目录对话框和选择文件对话框

    在MFC编程中经常会需要用到选择目录和选择文件的界面,以下总结一下本人常用的这两种对话框的生成方法: 选择目录对话框 //选择目录按钮void CDcPackerDlg::OnBnClickedDec ...

  10. [MFC]选择目录对话框和选择文件对话框 [转]

      在MFC编程中经常会需要用到选择目录和选择文件的界面,以下总结一下本人常用的这两种对话框的生成方法: 选择目录对话框 {    char szPath[MAX_PATH];     //存放选择的 ...

随机推荐

  1. NRPE: Unable to read output 问题处理总结

    自定义nagios监控命令check_disk_data,首先在nagios服务端command.cfg定义了#'check_disk_data' command definitiondefine c ...

  2. POJ 3468.A Simple Problem with Integers 解题报告

    用树状数组和线段树会比较简单,这里用这道题来学习Splay. 第一次写,代码比较丑 /* 初始化添加一个key值足够大的结点 保证每个需要的结点都有后继 */ #include <iostrea ...

  3. CSS负边距自适应布局三例

    单列定宽单列自适应布局: <!DOCTYPE HTML> <html> <head> <meta charset=”UTF-8″> <title& ...

  4. .net软件工程师面试题(参考答案)

    一.填空题(每空1分,共12分) 1面向对象的语言具有__封装______性.__继承_______性.__多态______性. 2能用foreach遍历访问的对象需要实现 ____Ienumerab ...

  5. 实例:jQuery实现标签切换

    具体实现效果如图: 原理很简单,就是监听鼠标滑动和点击事件.在第一个标签切换的示例中,当鼠标滑过某个标签时,就把class转移到当前标签.这里用到的jQuery方法主要是each()确定当前是哪一个标 ...

  6. js 判断时间,满足执行框架

    // 8点到早上19点关var curr = new Date();var time = curr.getHours(); if ( time >=0 && time <2 ...

  7. 十月例题F题 - City Game

    F - City Game Time Limit:3000MS     Memory Limit:0KB     64bit IO Format:%lld & %llu Bob is a st ...

  8. iOS中获取各种文件的目录路径和文件

    iphone沙箱模型的有四个文件夹,分别是什么,永久数据存储一般放在什么位置,得到模拟器的路径的简单方式是什么. documents,tmp,app,Library. (NSHomeDirectory ...

  9. MYSQL死锁

    转载时请以超链接形式标明文章原始出处和作者信息及本声明http://www.blogbus.com/ri0day-logs/59186177.html mysql使用myisam的时候锁表比较多,尤其 ...

  10. 使用模版引擎填充重复dom元素

    引入arttemplate,定义newajax发送跨域请求获得数据,将获得的数据用定义的格式渲染 <!DOCTYPE html><html lang="en"&g ...