打开对话框和保存对话框的设计

来源:互联网 发布:python 画分钟k线图 编辑:程序博客网 时间:2024/05/28 09:32

1.点击打开按钮后,打开一个对话框
button.addActionListener(new ActionListener() {
   
   @Override
   public void actionPerformed(ActionEvent arg0) {
    // TODO Auto-generated method stub
    //产生一个文件选择器
    jChooser = new JFileChooser();
    //设置默认的打开目录,如果不设的话按照window的默认目录(我的文档)
    jChooser.setCurrentDirectory(new File("e:/"));
    //设置打开文件类型,此处设置成只能选择文件夹,不能选择文件
    jChooser.setFileSelectionMode(JFileChooser.DIRECTORIES_ONLY);//只能打开文件夹
    //打开一个对话框
    int index = jChooser.showDialog(null, "打开文件");
    if (index == JFileChooser.APPROVE_OPTION) {
     //把获取到的文件的绝对路径显示在文本编辑框中
     jt.setText(jChooser.getSelectedFile().getAbsolutePath());
     readPath = jt.getText() + "\\";
    }
   }
  });
2.点击保存按钮后,打开一个保存对话框
button2.addActionListener(new ActionListener() {
   
   @Override
   public void actionPerformed(ActionEvent arg0) {
    // TODO Auto-generated method stub
    jChooser2 = new JFileChooser();
    jChooser2.setCurrentDirectory(new File("e:/"));//设置默认打开路径
    jChooser2.setDialogType(JFileChooser.SAVE_DIALOG);//设置保存对话框

    //将设置好了的两种文件过滤器添加到文件选择器中来
    TxtFileFilter txtFileFilter = new TxtFileFilter();
    XlsFileFilter xlsFileFilter = new XlsFileFilter();
    jChooser2.addChoosableFileFilter(txtFileFilter);
    jChooser2.addChoosableFileFilter(xlsFileFilter);
    
    int index = jChooser2.showDialog(null, "保存文件");
    if (index == JFileChooser.APPROVE_OPTION) {
     
     File f = jChooser2.getSelectedFile();
     String fileName = jChooser2.getName(f) + ".xls";
     writePath = jChooser2.getCurrentDirectory().getAbsolutePath() + fileName;
     try {
      writeFile();
     } catch (IOException e) {
      // TODO Auto-generated catch block
      e.printStackTrace();
     }
     //程序执行完毕后,出现一个对话框来提示
     int option = JOptionPane.showConfirmDialog(null, "贱人:结果已产生", "结果",
       JOptionPane.YES_NO_OPTION);
     System.exit(0);
    }
   }
  });

//重写文件过滤器,设置打开类型中几种可选的文件类型,这里设了两种,一种txt,一种xls
class TxtFileFilter extends FileFilter {

 @Override
 public boolean accept(File f) {
  // TODO Auto-generated method stub
  String nameString = f.getName();
  return nameString.toLowerCase().endsWith(".txt");
 }

 @Override
 public String getDescription() {
  // TODO Auto-generated method stub
  return "*.txt(文本文件)";
 }
 
}

class XlsFileFilter extends FileFilter {

 @Override
 public boolean accept(File f) {
  // TODO Auto-generated method stub
  String nameString = f.getName();
  return nameString.toLowerCase().endsWith(".xls");
 }

 @Override
 public String getDescription() {
  // TODO Auto-generated method stub
  return "*.xls(表格文件)";
 }
 
}

0 0
原创粉丝点击