我尝试使用按钮,2标签和文本字段创建一个简单的500x500小程序。小程序打开但它只是空白没有组件显示也不会改变颜色。不确定发生了什么或我完全错过了什么。
import java.applet.*;
import java.awt.Color;
import javax.swing.*;
public class Greeting {
private JFrame frame;
private JPanel panel;
private JLabel label1;
private JTextField textbox1;
private JButton button1;
private JLabel label2;
public Greeting(){
gui();
}
public void gui(){
frame = new JFrame("Greeting");
frame.setVisible(true);
frame.setSize(500, 500);
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
frame.setResizable(false);
panel = new JPanel();
panel.setBackground(Color.YELLOW);
label1 = new JLabel ("Please enter your name");
textbox1 = new JTextField(20);
button1 = new JButton ("Greet");
panel.add(label1);
panel.add(button1);
panel.add(textbox1);
frame.getContentPane().add(panel);
frame.add(panel);
}
public static void main(String[] args) {
new Greeting();
}
}
答案 0 :(得分:3)
如果您计划使用所有组件显示frame
,请将frame.setVisible(true)
行移至方法的末尾:
public void gui() {
...
frame.add(panel);
frame.setVisible(true);
}
这允许所有组件在显示在屏幕上之前添加到JFrame
。