我正在做一个简单的java应用程序来管理我的密码。我写了这个程序的一部分:
public class main {
public static void main(String[] args) {
JFrame jf = new JFrame("Ttile");
JPanel jp = new JPanel();
jp.setLayout(null);
jf.setVisible(true);
jf.setSize(1000,1000);
jf.setLocationRelativeTo(null);
jf.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
JButton jb = new JButton("Button");
jb.setBounds(0,0,120,35);
JTextField jtf = new JTextField(30);
jtf.setBounds(100,100,120,30);
jp.add(jb);
jp.add(jtf);
jf.getContentPane().add(jp);
}
}
问题在于,当我实例化JTextField(只是这个组件)时,窗口(或者更好的是,JPanel)不会在运行模式下显示任何其他组件,同时在调试模式下它可以正常工作。它是由我的视频卡引起的吗?或者它只是当前版本的Netbeans / Java的一个问题?我很困惑因为我无法理解原因:S。
注意:如果我将窗口展开到全屏,则每个组件都可见。为什么会出现这个问题?
感谢您的帮助。
答案 0 :(得分:1)
checkbox.checked = false
应该是你做的最后一件事。动态添加组件(即在该调用之后)将要求您重新验证组件层次结构(否则您将获得刚刚看到的内容)。