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. WHU 1579 Big data (DP)

    题意: f[0]=0,f[i]=f[i-1]+a or b. 求满足L<=∑f[n]<=R的序列的种数 n<100.  |a|,|b|<=10000.  |L|,|R|< ...

  2. Oracle数据库之PL/SQL触发器

    Oracle数据库之PL/SQL触发器 1. 介绍 触发器(trigger)是数据库提供给程序员和数据分析员来保证数据完整性的一种方法,它是与表事件相关的特殊的存储过程,它的执行不是由程序调用,也不是 ...

  3. ICE学习第三步-----Slice语言

    ICE:Slice语言(一)-编译 Introduce简介 Slice(Specification language for ice)是分离对象和对象的实现的基础的抽象机制.Slice在客户端和服务器 ...

  4. 关于存储的--b

    iphone沙箱模型的有四个文件夹,分别是什么,永久数据存储一般放在什么位置,得到模拟器的路径的简单方式是什么. documents,tmp,app,Library. (NSHomeDirectory ...

  5. ps中常用的快捷键

    ctrl+c  复制 ctrl+v 粘贴 ctrl+n 新建文件 ctrl+s 保存 空格键   手抓工具 ctrl+t  自由变形 ctrl+加号  放大 ctrl+减号  缩小 ctrl+r  标 ...

  6. 转:PHP超时处理全面总结

    原文来自于:http://wulijun.github.io/2012/08/08/php-timeout-summary.html 概述 在PHP开发工作里非常多使用到超时处理的场合,我说几个场景: ...

  7. codeforces C. Inna and Huge Candy Matrix

    http://codeforces.com/problemset/problem/400/C 题意:给你一个n*m的矩阵,然后在矩阵中有p个糖果,给你每个糖果的初始位置,然后经过x次顺时针反转,y次旋 ...

  8. 我的HttpClients工具

    import java.io.IOException; import javax.ws.rs.core.MediaType; import org.apache.commons.httpclient. ...

  9. BPMN 2.0规范

    .1. BPMN 2.0是什么呢? 业务流程模型注解(Business Process Modeling Notation - BPMN)是 业务流程模型的一种标准图形注解.这个标准 是由对象管理组( ...

  10. zabbix 四张大表分区

    trends_uint.ibd history history_unit trends CREATE TABLE `trends` ( `itemid` bigint(20) unsigned NOT ...