java中为什么在frame中加的控件只有调整一下窗口大小才能显示出来?

如题所述

多半是因为你是在frame显示之后才把组件加上去,
当改变窗口大小的时候窗口要重绘,这时组件才显示出来
把你加组件的代码放到frame.setVisible(true);后面就行了
温馨提示:内容为网友见解,仅供参考
第1个回答  2012-03-05
你可以添加一个JPanel控件,把其他控件放在该JPanel控件中

给你个实例:HelloWorld.java

import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JPanel;
import javax.swing.JTextField;

public class HelloWorld {

/**
* @param args
*/
public static void main(String[] args) {
// TODO Auto-generated method stub
new HelloWorld();

}

HelloWorld(){
JFrame frame=new JFrame("Baidu");
frame.setSize(300,200);//设置窗体大小
frame.setVisible(true);//设置窗体可见
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);//设置关闭按钮

JPanel panel=new JPanel();//添加一个面板,把控件放在面板中
JTextField text=new JTextField();
text.setText("你好,很高兴认识你");
JLabel label=new JLabel("这是一个标签控件");

panel.add(text);
panel.add(label);
frame.add(panel);
}

}
第2个回答  2018-07-17
//可以试一试先创建容器,容器添加组件,最后JFrame显示;本人亲测
Container ct=this.getContentPane();//生成一个容器
ct.add(comp);
this.setTitle("");
this.setVisible(true);
this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
第3个回答  2012-03-05
因为有可能这和你的显示屏分辨率有关系。
相似回答