Frame

shijia1210 2007-11-03 07:45:58
那位高手能告诉我,我的 Frame 为什么非要在边框上鼠标拉动一下才能看到TextField
和 Button啊?

import java.awt.*;
import java.awt.event.*;
public class TestFrame extends Frame
{
TextField txt;
Button but;
public static void main(String[] args)
{
TestFrame TF = new TestFrame();
}
TestFrame()
{
super("我的Frame");
setLayout(new FlowLayout());
setSize(300,400);
setVisible(true);
txt = new TextField(20);
add(txt);
but = new Button("好好学习");
add(but);
addWindowListener(new cls());
}
class cls extends WindowAdapter
{
public void windowClosing(WindowEvent e)
{
System.exit(0);
}
}
}
...全文
55 8 打赏 收藏 转发到动态 举报
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
xiaoxiaomilaoshu 2007-11-28
  • 打赏
  • 举报
回复
frame.pack();//缩紧组件,在首次打开frame时即可将全部组件显示出来
zxg12345 2007-11-08
  • 打赏
  • 举报
回复
Frame一般都要加以下两个方法
frame.pack();//调整窗口大小从而适应组件。
frame.setVisible(true);//显示组件。
shijia1210 2007-11-03
  • 打赏
  • 举报
回复
谢谢,果然好了
世上好人多 啊
感动55555555555
lihaifeng0412 2007-11-03
  • 打赏
  • 举报
回复
说的都不错啊
fayewan 2007-11-03
  • 打赏
  • 举报
回复
如果要在组件填加进Frame前SetVisible,你要在实现中调用validate();
fayewan 2007-11-03
  • 打赏
  • 举报
回复
import java.awt.*;
import java.awt.event.*;
public class TestFrame extends Frame {
TextField txt;
Button but;
public static void main(String[] args) {
TestFrame TF = new TestFrame();
}
TestFrame() {
super( "我的Frame ");
setLayout(new FlowLayout());
setSize(300,400);

txt = new TextField(20);
add(txt);
but = new Button( "好好学习 ");
add(but);
addWindowListener(new cls());
setVisible(true);//组件填加最后才可以设置可见.
}
class cls extends WindowAdapter {
public void windowClosing(WindowEvent e) {
System.exit(0);
}
}
}

fayewan 2007-11-03
  • 打赏
  • 举报
回复
在我这边运行不会出现你说的情况啊?

贝壳鱼 2007-11-03
  • 打赏
  • 举报
回复
设置的字数过长?换个layout?

62,616

社区成员

发帖
与我相关
我的任务
社区描述
Java 2 Standard Edition
社区管理员
  • Java SE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧