按下的 JButton 不适用于 JTextField

JButton pressed doesn't work with JTextField

import java.awt.Color;
import java.awt.FlowLayout;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;

import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JPanel;
import javax.swing.JTextField;

public class guiDemo extends JFrame {

public static void main(String[] args) {

    JFrame myGUI = new guiDemo();
    myGUI.setSize(750, 600);
    myGUI.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
    myGUI.setVisible(true);

    JButton myButton = new JButton("Click Me");
    myButton.setSize(300, 150);
    myGUI.add(textField);
    myGUI.add(myButton);
    myGUI.setLayout(new FlowLayout());

    JTextField textField = new JTextField("Hello GUI World!");



    myButton.addActionListener(new ActionListener() {
        public void actionPerformed(ActionEvent e) {

            String textInField = textField.getText();
            textField.setForeground(Color.BLUE);
            System.out.println(textInField);
            }
        });
    }
}

我只想在按下按钮时在按钮上方的 JTextField 中显示文本。同时文字必须是蓝色的。我不完全知道如何在按钮上方获取文本。我认为这与 JPanel 有关但不是积极的。 oracle教程对我来说不是很容易理解。

输出是在控制台中打印我想要的文本,而不是我创建的容器。

JTextField textField = new JTextField("Hello GUI World!"); 使用前必须声明 myGUI.add(textField);

编辑: 检查你的代码后,你应该把 myGUI.setVisible(true); 放在 main 函数的末尾。对我来说,它是这样工作的。