怎么监听JTextField单行文本的变化呢?也就是怎么通过“保存”按钮获取新输入在文本区的字符串呢?在线等待!!JFrame ap = new JFrame("");
      ap.setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE);
      ap.setSize(350, 70);
      Container c = ap.getContentPane();
        c.setLayout(new BoxLayout(c, BoxLayout.X_AXIS));
        JPanel[] pp = new JPanel[2];
        JTextField[] t=new JTextField[2];
      pp[0]=new JPanel();
        t[0]=new JTextField("输入文件名",6);
        t[1]=new JTextField("",15);
        t[0].setEditable(false);
        pp[0].add(t[0]);
        pp[0].add(t[1]);
        c.add(pp[0]);
        
       JButton pb= new JButton("保存");
       //pb.addActionListener(new pb_ActionListener());
       pp[1]=new JPanel();
            pp[1].add(pb);
            c.add(pp[1]);   
        ap.setVisible(true);

解决方案 »

  1.   

    楼主是要这样的么pb.addMouseListener(new MouseAdapter() {
    @Override
    public void mouseClicked(MouseEvent e) {
    String s1 = t[0].getText(); //将t[0]的内容给s1
    String s2 = t[1].getText(); //将t[1]的内容给s2
    }

    });
      

  2.   


    jtf是一个JTextField
    jtf.getDocument().addDocumentListener(new DocumentListener(){ public void changedUpdate(DocumentEvent e) {
    //文本改变时响应

    } public void insertUpdate(DocumentEvent e) {
    //差入时响应

    } public void removeUpdate(DocumentEvent e) {
    //删除时响应

    }

    });

    }
      

  3.   

    那样你只需要在按钮监听器了进行监听。
    当你点击了保存后,使用 t[1].getText() 可以获取到 t[1] 中的字符串。你可以写成 
    System.out.println(t[1].getText()); 输出就知道是否得到该字符串了
    提示信息应该用 JLabel 写会比较好吧
      

  4.   

    比如我要用这个监听JTextField t=new JTextField(“”,8);文本区的变化;public void changedUpdate(DocumentEvent e)里面要怎么写呢??我查api上面说
    changedUpdate
    void changedUpdate(DocumentEvent e)给出属性或属性集发生了更改的通知。 参数:
    e - 文档事件还是不会诶,还有4楼说的,我开始就那样子做的,但是get到的一直都是初始化的值
      

  5.   

    楼主的代码没贴全,无法知道你的问题到底出在哪里。
    其实很简单的,没那么复杂。给你参考:import javax.swing.*;
    import java.awt.*;
    import java.awt.event.*;public class MyFrame extends JFrame implements ActionListener {

    private JTextField input;
    private JButton btn;
    private JLabel output;

    public MyFrame() {
    setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
    setSize(350, 100);
    Container c = getContentPane();
    c.setLayout(new FlowLayout());
    c.add(new JLabel("输入文件名"));
    input = new JTextField(15);
    c.add(input);
    btn = new JButton("保存");
    btn.addActionListener(this);
    c.add(btn);
    output = new JLabel();
    c.add(output);
    setVisible(true);
    } public void actionPerformed(ActionEvent e) {
    output.setText("输入的文件名为:"+input.getText());
    } public static void main(String[] args) {
    new MyFrame();
    }}