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. get方式编码问题解决方案 转载

    我们的内容使用GET方式发送,就会在URL后面带上内容,在游览器发来的请求经过了游览器的URI编码,发送到服务器这边,如果是struts2会经过拦截器进行URI解码,并且使用"iso8859 ...

  2. php学习小技巧

    1.print_r可打印数组 <?php echo '<p class="ajax">This paragraph was loaded with AJAX.&l ...

  3. AppiumDriver 运行app启动基本参数

    记录一下 DesiredCapabilities capabilities = new DesiredCapabilities(); capabilities.setCapability(Mobile ...

  4. asp.net将数据导出到excel

    本次应用datatable导出,若用gridview(假设gridview设为了分页显示)会出现只导出当前页的情况. protected void btnPrn_Click(object sender ...

  5. centos es2.x安装

    #把下面这个放到es的server路径下,这个是rpm安装改了下. # # init.d / servicectl compatibility (openSUSE) # if [ -f /etc/rc ...

  6. cloudera目录位置

    http://www.aboutyun.com/thread-9189-1-1.html 这里来的嘿嘿. 1. 相关目录/var/log/cloudera-scm-installer : 安装日志目录 ...

  7. codevs 4163 hzwer与逆序对

    传送门 题目描述 Description hzwer在研究逆序对. 对于数列{a},如果有序数对(I,j)满足:i<j,a[i]>a[j],则(i,j)是一对逆序对. 给定一个数列{a}, ...

  8. 【转】分享II→IV FPGA本人的几个版本电源模块设计的方案

    很多人问我FPGA的电源怎么怎么着,当然也有人瞎忽悠乱设计,当然我的设计也不是很完美...这里把我当年第一次设计FPGA,到现在的电源方案,几个演变.分析的过程,给大家讲讲... (1)FPGA电源方 ...

  9. 三种常见字符编码简介:ASCII、Unicode和UTF-8

    什么是字符编码? 计算机只能处理数字,如果要处理文本,就必须先把文本转换为数字才能处理.最早的计算机在设计时采用8个比特(bit)作为一个字节(byte),所以,一个字节能表示的最大的整数就是255( ...

  10. Windows Phone 学习笔记(一) 数据存储

    独立存储设置IsolatedStorageSetting private IsolatedStorageSettings _appSettings; public MainPage() { Initi ...