[英]Visualization issue of a simple GUI in Java
我用Java做了一个非常简单的GUI,但是当我运行程序时,GUI表现得很奇怪!
一旦运行该应用程序:GUI如下所示:
一旦我将其最小化并重新备份,它就可以正常显示,如下所示:
这是非常简单的代码:
public class Prova2 {
public static void main(String[] args) {
JFrame frame = new JFrame("A Simple GUI");
frame.setVisible(true);
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
frame.setSize(650, 120);
frame.setLocation(430, 100);
JPanel panel = new JPanel();
frame.add(panel);
JLabel lbl = new JLabel("Select one of the possible choices and click OK");;
lbl.setVisible(true);
panel.add(lbl);
String[] choices = { "CHOICE 1","CHOICE 2", "CHOICE 3","CHOICE 4","CHOICE 5","CHOICE 6"};
JComboBox<String> cb = new JComboBox<String>(choices);
cb.setVisible(true);
panel.add(cb);
JButton btn = new JButton("OK");
panel.add(btn);
}
}
为了在运行应用程序后立即显示GUI良好(显示所有元素),我缺少什么?
必须烦恼的是必须最小化窗口或调整窗口大小才能正确显示GUI!
我测试了您的代码,问题是您在JFrame
创建项目之前将可见性设置为true
。 因此,只需剪切frame.setVisible(true);
并将其粘贴为构造函数的最后一行。
我也看到你没有使用强烈推荐的布局管理器。 检查此以获取信息。
使用布局管理器
遵循Swing Toolkit的主要原则:应在EDT线程(UI线程)上操作和启动所有UI。 这是一个很好的解释http://www.pushing-pixels.org/2007/12/06/unwriting-rule-of-working-with-swings-edt.html
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.