具体生成工具如图:

(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. 怎样在thinkphp里面执行原生的sql语句

    $Model = new Model(); $sql = "select * from `order`"; $voList = $Model->query($sql); 只是 ...

  2. JS入门笔记

    DOM有四种节点: 1. 元素节点:即标签2. 属性节点:写在标签里的属性3. 文本节点:嵌在元素节点里展示出来的文本4. 文档节点:document 获取元素节点的三种常用方法: 1.ById 2. ...

  3. Syntax error on token "package", assert expected------踩坑记录

    今天写程序碰到个坑,eclipse编辑,jdk1.7,clean编译项目后报错Syntax error on token "package", assert expected 反复 ...

  4. 【转载】【挖掘Treap的潜力】

    原帖: http://fanhq666.blog.163.com/blog/static/819434262011021105212299/ 你的Treap能支持以下操作吗?1.区间增减 2.区间求最 ...

  5. 【BZOJ3211】【并查集+树状数组】花神游历各国

    Description   Input   Output 每次x=1时,每行一个整数,表示这次旅行的开心度 Sample Input 4 1 100 5 5 5 1 1 2 2 1 2 1 1 2 2 ...

  6. PHPCMS V9 学习总结(转)

    转自:http://www.cnblogs.com/Braveliu/p/5074930.html 在实现PHPCMS网站过程中,根据业务需求,我们遇到很多问题,特此总结如下,以便大家参考学习. [1 ...

  7. 为什么我们不喜欢用富UI控件

    我们对于理解一般意义的抽象关系并没有问题,但如第一部分使用Entity Framework 时说明的,事实恰好相反.我们还喜欢在交付应用程序时利用抽象关系,比如使用Azure等云服务.在这两种情况下, ...

  8. overflow第一次觉得你有点可恶

    今天用css做下拉菜单,因为不需要做手机自适应,再手机里看起来工整一点就行,可是列表中最后一个li的宽度撑开了父div,导致看起来很糟糕,所以给父元素加overflow:hidden:但是下拉列表也被 ...

  9. opencv之图像腐蚀

    最近准备好好学习opencv 这博客就是我的学习笔记. #include <cv.h> #include <highgui.h> using namespace std; vo ...

  10. VIM中文乱码

    下面是关于VIM中文乱码问题的解决方法: 打开VIM的配制文件在里面加上一段这样的代码就可以了: set encoding=prc