0
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と関係がありますが、ポジティブではないと思います。私のオラクルのチュートリアルはわかりにくいです。JTextFieldでJButtonを押しても機能しない
出力は、私が作成したコンテナではなく、コンソールに必要なテキストを印刷しています。あなたのコードをチェックした後、あなたがmain
関数の最後にmyGUI.setVisible(true);
を置くべき :
私はmyGUI.add(textField)を配置しました。 JTextFieldの後にtextField =新しいJTextField( "Hello GUI World!");それでも "Hello GUI World!"だけが表示されます。ボタンの上にあるテキストボックスには表示されません。 – frankie3552
私は下部に置いても問題ありませんが、前のボタンをクリックしない限り、テキストボックスはポップアップ表示されます。私の問題はどこにありますか? – frankie3552