package com.matp.view;

import java.awt.FlowLayout;

public class SimpleDialog extends JDialog implements ActionListener {
        
        // 文本框,用于输入字符串
        JTextField field;
        JTextField field2;
        // 对话框的父窗体。
        RecordTestCaseWin parent;
        // “确定”按钮
        JButton setButton;
    
        /**
         * 构造函数,参数为父窗体和对话框的标题
         */
      public  SimpleDialog(JFrame prentFrame, String title) {
            // 调用父类的构造函数,
            // 第三个参数用false表示允许激活其他窗体。为true表示不能够激活其他窗体
            super(prentFrame, title, false);
//            parent = (RecordTestCaseWin) prentFrame;
    
            // 添加Label和输入文本框
            JPanel p1 = new JPanel();
            JLabel label = new JLabel("请输入项目名称:");
            p1.add(label);
            field = new JTextField(30);
            field.addActionListener(this);
            p1.add(field);
            getContentPane().add("North", p1);
            
            // 添加Label和输入文本框
            JPanel p3 = new JPanel();
            JLabel label2 = new JLabel("请输入脚本名称:");
            p3.add(label2);
            field2 = new JTextField(30);
            field2.addActionListener(this);
            p3.add(field2);
            getContentPane().add("Center", p3);
    
            // 添加确定和取消按钮
            JPanel p2 = new JPanel();
            p2.setLayout(new FlowLayout(FlowLayout.RIGHT));
            JButton cancelButton = new JButton("取 消");
            cancelButton.addActionListener(this);
            setButton = new JButton("确 定");
            setButton.addActionListener(this);
            p2.add(setButton);
            p2.add(cancelButton);
            getContentPane().add("South", p2);
    
            // 调整对话框布局大小
            pack();
        }
    
        /**
         * 事件处理
         */
        public void actionPerformed(ActionEvent event) {
    
            Object source = event.getSource();
            if ((source == setButton)) {
                // 如果确定按钮被按下,则将文本矿的文本添加到父窗体的文本域中
//                parent.setText(field.getText());
//                File f = new File(".\\config\\save\\shutter_button.txt");
//                File fw = new File("D:\\MATP_robot");
                String Txtname = field.getText();
                File file3 =new File("D:\\MATP_robot"+"\\"+ Txtname);    
                //如果文件夹不存在则创建    
                if  (!file3 .exists()  && !file3 .isDirectory())      
                {       
                    System.out.println("//不存在");  
                    file3 .mkdir();    
                } else   
                {  
                    System.out.println("//目录存在");  
                }

File file = new File(".\\config\\batfolder\\Matp.bat");
                if (file.exists()) {
                    file.delete();
                }
                BufferedWriter writer = null;

try {
                    writer = new BufferedWriter(new FileWriter(
                            ".\\config\\batfolder\\Save.bat", true));
                } catch (IOException e2) {
                    // TODO Auto-generated catch block
                    e2.printStackTrace();
                }

try {
                    writer.write("echo off" + "\r\n");
                    writer.write("copy .\\config\\shutter_button.txt "+ "D:\\MATP_robot"+"\\"+Txtname
                            + "\r\n");

writer.flush();
                    writer.close();
                } catch (IOException e1) {
                    // TODO Auto-generated catch block
                    e1.printStackTrace();
                }
                
                RAMThreadOn mRAMThreadOn = new RAMThreadOn();
                mRAMThreadOn.run();
                String Txtname2 = field2.getText();
                File f = new File("D:\\MATP_robot\\"+"\\"+Txtname+"\\"+"shutter_button.txt");
                System.out.println(f);
                f.renameTo(new File("D:\\MATP_robot\\" + "\\"+Txtname+"\\" + Txtname2 + ".txt"));
                System.out.println(f + "========11========");
                JOptionPane.showMessageDialog(null, "脚本保存在D:\\MATP_robot"+"\\"+Txtname+"目录中");
                field2.setText("");
                
            }
            field.selectAll();
            // 隐藏对话框
            setVisible(false);
        }
    }

调用类

exportBtn.addActionListener(new ActionListener() {
//            @Override
            public void actionPerformed(ActionEvent arg0) {
//                RAMThreadOn mRAMThreadOn = new RAMThreadOn();
//                mRAMThreadOn.run();
//                String Txtname = fileName.getText();
//                File f = new File(".\\config\\save\\shutter_button.txt");
//                // File f = new File(".\\config\\save\\shutter_button.txt");
//                System.out.println(f);
//                f.renameTo(new File(".\\config\\save\\" + Txtname + ".txt"));
//                System.out.println(f + "========11========");
//                JOptionPane.showMessageDialog(null, "脚本保存在config\\save目录中");
//                fileName.setText("");
                
                 if (dialog == null) {
                        dialog = new SimpleDialog(prentFrame, " vcv ");
                    }
                    dialog.setVisible(true);
                    dialog.setLocation(500, 400);
                    
//                
            }
        });

java自定义对话框的更多相关文章

  1. Android中的AlertDialog使用示例五(自定义对话框)

    在Android开发中,我们经常会需要在Android界面上弹出一些对话框,比如询问用户或者让用户选择.这些功能我们叫它Android Dialog对话框,AlertDialog实现方法为建造者模式. ...

  2. android继承Dialog实现自定义对话框

    有时需要自定义对话框,可以使用AlterDialog.Bulider,比如下面的代码片段 new AlertDialog.Builder(self) .setTitle("标题") ...

  3. 关于JFace的自定义对话框(Dialog类)

    仅仅是使用MessageDialog,InputDialog等JFace中现成的对话框类是无法满足实际项目开发需要的. 很多时候都需要自己定制对话框,自定义对话框只要在Dialog类的基础上作扩展就行 ...

  4. android创建自定义对话框

    创建如下自定义对话框: JAVA代码 LayoutInflater li = LayoutInflater.from(TagActivity. this);  //NOTE final View Te ...

  5. Android 常见对话框的简单使用(提示信息对话框、单选多选对话框、自定义对话框)

    目录 一.提示信息对话框: 二.单选对话框: 三.多选对话框: 四.自定义对话框: 演示项目完整代码: 一.提示信息对话框: //显示提示消息对话框 private void showMsgDialo ...

  6. Android—关于自定义对话框的工具类

    开发中有很多地方会用到自定义对话框,为了避免不必要的城府代码,在此总结出一个工具类. 弹出对话框的地方很多,但是都大同小异,不同无非就是提示内容或者图片不同,下面这个类是将提示内容和图片放到了自定义函 ...

  7. java自定义注解类

    一.前言 今天阅读帆哥代码的时候,看到了之前没有见过的新东西, 比如java自定义注解类,如何获取注解,如何反射内部类,this$0是什么意思? 于是乎,学习并整理了一下. 二.代码示例 import ...

  8. jquery自定义对话框alert、confirm和prompt

    jQuery Alert Dialogs,又一个基于jQuery的提示框插件,主要包括Alert.Confirm.prompt这三种,还有一个高级范例,可以在提示框内嵌入HTML语言,可以自定义风格样 ...

  9. Android自定义对话框

    在android中有自带的对话框,为了美观,很多开发者会使用自定义对话框,如下图: 点击“弹出自定义对话框按钮后”显示如图效果. 首先要自己定义一个xml文件定义自己对话框的样式: <?xml ...

随机推荐

  1. asp.net MVC 从其它项目复制过来的Area里面的Controllers文件读取不到

    从其实项目复制过来的Controllers,在访问时显示不存在文件 检查一下对应的area里面的AreaRegistration文件的命名空间是否一致

  2. js获取当前时间戳与日期比较

    如何用javascript获取当前时间戳: 复制代码 代码示例: 方法1: var timestamp = date.parse(new date()); 结果:1280977330000 方法2: ...

  3. [Python]更加Pythonic的多个List合并和Python的安利

    原题: https://segmentfault.com/q/1010000005904259 问题: 倘若存在 L=[ [1,2,3],[4,5,6],[7,8,9]] 这样的列表,如何把合并成[1 ...

  4. Javascript学习之函数(function)

    在JS中,Function(函数)类型实际上是对象;每个函数都是Function类型的实例,而且都与其他引用类型一样具有属性和方法.由于函数是对象,因此函数名实际上也是一个指向函数对象的指针. 一 函 ...

  5. C语言连接数据库

    举个例子,连接SQL: // 打开数据库 strDBClass.Format(_T("Provider=Microsoft.Jet.OLEDB.4.0;Data Source=%s;Jet ...

  6. 缩小jquery体积

    jQuery 分析 据统计,目前全世界57.3%的网站使用它.也就是说,10个网站里面,有6个使用jQuery.如果只考察使用工具库的网站,这个比例就会上升到惊人的91.7%. 虽然jQuery如此受 ...

  7. C#技术分享【PDF转换成图片——13种方案】(2013-07-25重新整理)

    原文:C#技术分享[PDF转换成图片--13种方案](2013-07-25重新整理) 重要说明:本博已迁移到 石佳劼的博客,有疑问请到 文章新地址 留言!!! 写在最前面:为了节约大家时间,撸主把最常 ...

  8. rsync使用说明

    需求:把10.5.128.190数据同步到10.5.128.27 用客服端-服务器模式,需要从客户端发起 也就是从10.5.128.27发起 10.5.128.27 作为客户端 10.5.128.19 ...

  9. thinkphp中的session()方法

    系统提供了Session管理和操作的完善支持,全部操作可以通过一个内置的session函数完成. 用法 session($name, $value='') 参数 name(必须):如果传入数组 则表示 ...

  10. Cut the Cake(大数相乘)

      MMM got a big big big cake, and invited all her M friends to eat the cake together. Surprisingly o ...