繁体   English   中英

在批处理文件中显示JTextField值

[英]Display JTextField value in Batch file

我正在制作一个Gui ,其中有一个按钮和一个JTextField

目前,我正在将值从文本文件读取到可编辑的JTextField和执行批处理文件的JButton(run) 我们如何在批处理文件中显示JTextfield值。 现在,当我运行程序并按下运行按钮时,将运行一个批处理文件,显示正在运行的值,但代替运行值,它应显示JTextfield值。

码:

import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
import java.io.*;
import java.util.*;
import java.awt.event.*;

public class A extends JPanel 
{
 public A() {

JPanel buttonPanel = new JPanel();
add(buttonPanel);
buttonPanel.setLayout(new FlowLayout());


JTextField field = new JTextField(10);
buttonPanel.add(field);


try{
        InputStream ips=new FileInputStream("a.txt"); 
        InputStreamReader ipsr=new InputStreamReader(ips);
        BufferedReader br=new BufferedReader(ipsr);
        String line;
        while ((line=br.readLine())!=null){
            field.setText(line);
          }
        br.close(); 
    }       
    catch (Exception e){
        e.printStackTrace();
    }

JButton button = new JButton("Run");
buttonPanel.add(button);
button.addActionListener(new ActionListener() 
{
    public void actionPerformed(ActionEvent e)
    {
         try {
            Runtime.getRuntime().exec("cmd /c start p.bat");
             }catch (Exception ex) {
        ex.printStackTrace();
        }
    }
   });

 }
public static void main(String[] args) {
A app = new A();
JFrame m = new JFrame("A");
m.getContentPane().add(app);
m.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
m.pack();
m.setVisible(true);
 }
}

A.TXT:

1248

p.bat:

 echo value running
 pause

将您的p.bat更改为:

echo value %1
pause

以及您在哪里运行命令:

Runtime.getRuntime().exec("cmd /c start p.bat" + " " + field.getText());

如果字段可能包含多个单词,则应将其放在“”旁边,例如:

Runtime.getRuntime().exec("cmd /c start p.bat" + " \\"" + field.getText()+ "\\"");

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM