近日在做一个java的串口通讯swing开发界面的小项目,给Jframe里面布局的控件JComboBox下拉框和JButton一开始运行和死后不显示,鼠标扫过,JButton才显示出来,JComboBox下拉框要再点击之后才显示出来。
关于这个问题的解决方法,是因为把jf.setVisible(true);放到最后面。这个语句是用来显示frame的,其他的代码是用来布局frame的。如代码所示,还没有布局完成就显示,当然会有问题。布局完成后再显示就没有问题了。
代码片段:
comNumJl = new JLabel("端口号:");
comNumJl.setText("端口号:");
comNumJl.setFont(ft);
comNumJl.setBounds(40,40,100,60);
comJc = new JComboBox(comItem);
comJc.setFont(ft);
comJc.setBounds(250,40,120,60);
comJc.setSelectedIndex(4);
panel.add(comJc);
panel.add(comNumJl);
panel.add(textJl);
frame.setVisible(true);
comNumJl.setVisible(true);
comJc.setVisible(true);
textJl.setVisible(true);
startBtn.setVisible(true);