public class Question extends JFrame { public Question() { super.setTitle("Quiz Game"); super.setSize(100, 150); super.setLocation(300, 200); this.setVisible(true); this.setDefaultCloseOperation(EXIT_ON_CLOSE); JPanel panel = new JPanel(); this.add(panel); JTextField textField = new JTextField(); // panel.add(textField, BorderLayout.SOUTH); panel.add(textField, new GridLayout(1, 3)); } }public class RunQuiz { public static void main(String[] args) {} Question q = new Question(); }这样写为什么不弹出窗口
时间: 2024-01-16 18:04:26 浏览: 89
你的代码有两个问题:
1. `main` 方法为空,而且没有调用 `Question` 类的构造函数。所以当你运行这个程序时,它什么也不会做。你需要在 `main` 方法中调用 `Question` 类的构造函数。
2. 在 `Question` 类的构造函数中,你需要将窗口设置为可见的,但是你的代码中没有设置。你需要在构造函数中添加 `this.setVisible(true);` 来让窗口显示出来。
以下是修改后的代码:
```
public class Question extends JFrame {
public Question() {
super.setTitle("Quiz Game");
super.setSize(100, 150);
super.setLocation(300, 200);
this.setDefaultCloseOperation(EXIT_ON_CLOSE);
JPanel panel = new JPanel();
this.add(panel);
JTextField textField = new JTextField();
panel.add(textField, new GridLayout(1, 3));
this.setVisible(true);
}
}
public class RunQuiz {
public static void main(String[] args) {
Question q = new Question();
}
}
```
现在运行 `RunQuiz` 类,你应该能够看到弹出的窗口。
阅读全文