新手问一个添加button的问题

cnnbxy 2007-06-13 01:52:04
import java.awt.*;
import javax.swing.*;

class FrameTest extends JFrame
{
public FrameTest()
{
super("窗体标题");
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
setVisible(true);
setSize(240,90);

}
}

class ButtonTest extends FrameTest
{
JButton buttonObj;
public ButtonTest()
{
buttonObj=new JButton("按钮1");

Container conObj=getContentPane();
conObj.add(buttonObj);
}
}

public class J01_Frame {

public static void main(String[] args) {
new ButtonTest();

}

}


以上代码运行只会出来一个窗体.死活不会出现那个Button,不知是何故
...全文
249 13 打赏 收藏 转发到动态 举报
写回复
用AI写文章
13 条回复
切换为时间正序
请发表友善的回复…
发表回复
hellomh 2007-06-14
  • 打赏
  • 举报
回复
import java.awt.*;
import javax.swing.*;

class FrameTest extends JFrame
{
public FrameTest()
{
super("窗体标题");
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
setSize(240,90);

}
}

class ButtonTest extends FrameTest
{
JButton buttonObj;
public ButtonTest()
{
buttonObj=new JButton("按钮1");

Container conObj=getContentPane();
conObj.add(buttonObj);
}
}

public class J01_Frame {

public static void main(String[] args) {
ButtonTest f=new ButtonTest();
f.setVisible(true);
}

}
qiuzhilv 2007-06-13
  • 打赏
  • 举报
回复
或者父类子类都不写setVisible。在main里这样写:
public static void main(String[] args) {
new ButtonTest().setVisible(true);

}
qiuzhilv 2007-06-13
  • 打赏
  • 举报
回复
把类FrameTest里的setVisible(true);写到他的子类里就好了。
或者直接在他的子类里也就是类ButtonTest里的构造方法里写setVisible(true);就行。
先执行父类的构造方法,在执行子类。子类里的构造方法可以覆盖父类。可能父类执行完了后再加子类的button而子类没有setVisible所以没有显示出来。
shuizhe 2007-06-13
  • 打赏
  • 举报
回复
jdk1.6.0测试没有问题
boby 2007-06-13
  • 打赏
  • 举报
回复
你在conObj.add(buttonObj);下面加一句validate();就行了,让Frame布置一下添加的子组件
qiuzhilv 2007-06-13
  • 打赏
  • 举报
回复
我的也一样。需要点一下边框,也就是改变大小。和重叠没关系,根本就没有按钮重叠什么。
rshao7 2007-06-13
  • 打赏
  • 举报
回复
按钮占了整个面版的,如果两个按钮也没有的话,那就是两个按钮重叠的占了整个面版的...
hellomh 2007-06-13
  • 打赏
  • 举报
回复
我的情况和LZ一样, 运行后一定要手动改变一下窗体的大小才会显示出按钮,那个高人能解释?
环境 JDK1.5
cnnbxy 2007-06-13
  • 打赏
  • 举报
回复
楼上,不是这样的,我写了两个按钮都没有,一定要手动改变一下窗体大小才会显示,我找不到原因
getContentPane().add("North",buttonObj1);
getContentPane().add("South",buttonObj2);

晚上换台机子试试
吴恒 2007-06-13
  • 打赏
  • 举报
回复
有按钮,只不过是你的按钮占了整个面板。哈
cnnbxy 2007-06-13
  • 打赏
  • 举报
回复
我是jdk1.5的,我后来发现按下最大化后会出现的,但是运行后一定要手动改变一下窗体的大小才会显示出按钮,难道一定要jdk1.6.0吗?
约翰羊 2007-06-13
  • 打赏
  • 举报
回复
有按钮啊....
jdk1.6.0测试 6.13 14:00测试通过。
joejoe1991 2007-06-13
  • 打赏
  • 举报
回复
学习

62,623

社区成员

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

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