小编bhu*_*van的帖子

Swing GUI不等待用户输入

我是Swing的新手,我创建了一个带有按钮和文本字段的简单GUI类.这个类中有一个方法String createAndShowUI(),我希望它返回文本字段的文本.我创建了另一个调用此方法的主类,并期望返回文本字段的文本.不过我的问题是这个方法不等待用户输入文本字段并单击按钮; 一旦调用GUI就会返回.我希望它等待按钮点击.

// TestSwing.java
import javax.swing.*;
import java.awt.*;
import java.awt.event.*;

public class TestSwing  extends JPanel implements ActionListener {

    JButton submit;
    JTextField t1;
    String msg = "No Msg";

    public TestSwing() {
        submit = new JButton("Submit");
        t1 = new JTextField(10);
        submit.addActionListener(this);
        setLayout(new FlowLayout());
        add(t1);
        add(submit); 
    }

    public void actionPerformed(ActionEvent e) {
        if(e.getSource() == submit) {
            msg = t1.getText(); 
        }
    }

    public String createAndShowUI() {
        JFrame f = new JFrame("Sample frame");
        f.add(new TestSwing());
        f.pack();
        f.setVisible(true);
        return msg;
    }

}

//Main.java …
Run Code Online (Sandbox Code Playgroud)

java swing

3
推荐指数
1
解决办法
8195
查看次数

标签 统计

java ×1

swing ×1