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. nginx插件ngx_lua

    ngx_lua是淘宝的维护的产品,真心不错.配置文件包含可以做很多事情的lua脚本. 公司有个产品对注册的广告盒子进行反向代理,这样可以在盒子上做很多事情:和服务器通信,远程控制盒子等等.nginx反 ...

  2. jQuery慢慢啃之选择器(二)

    1.$("#myDiv");ID匹配一个元素 <span id="foo[bar]"></span> $("#foo\\[ba ...

  3. APP被Rejected 的各种原因翻译(转)

    原文:http://www.cnblogs.com/sell/archive/2013/02/16/2913341.html Terms and conditions(法律与条款) 1.1 As a ...

  4. paramiko SSH 模块简单应用。

    目的:需要ssh链接到Linux主机,执行telnet 命令,抓回显匹配制定内容. ssh --->执行telnet到本地端口--->执行类似 ls 的命令.匹配命令执行后的特定回显字段. ...

  5. sencha touch中用来格式化日期的字符串参数

  6. PHP要注意的14个问题

    1.页面之间无法传递变量 get,post,session 在最新的php版本中自动全局变量是关闭的,所以要从上一页面取得提交过来得变量要使 用$_GET['foo'],$_POST['foo'],$ ...

  7. uboot的devices_init函数分析

    一.函数说明 函数功能: 完成设备的初始化 函数位置: common/devices.c 二.程序分析 int devices_init (void) { #ifndef CONFIG_ARM /* ...

  8. Recovery和Charger模式下屏幕旋转180度[转]

    如何让Recovery (系统固件升级),charger(关机充电动画)时屏幕旋转180度 解决方法: 1.在bootable\recovery\minui\Graphics.c 文件找到gr_fli ...

  9. 应用Oracle(用户创建和授权)

    使用oracle命令创建用户,并授权. 系统管理员身份登录 cmd中, sqlplus / as sysdba 若登录失败,则 sqlplus system/[数据库创建时指定密码] as sysdb ...

  10. BZOJ 3893 Cow Jog

    Description The cows are out exercising their hooves again! There are \(N\) cows jogging on an infin ...