首页 新闻 搜索 专区 学院

路过的java大神,帮我解释下,谢谢了

0
悬赏园豆:10 [已解决问题] 解决于 2016-10-30 19:49

JFrame tr=new JFrame();

JPanel th;

th=new  JPanel();

tr.setContentPane(th); 

 

就单单论下面这一句是什么意思?麻烦解释清楚一些!谢谢了tr.setContentPane(th);

梦再笑的主页 梦再笑 | 初学一级 | 园豆:55
提问于:2016-10-28 10:49
< >
分享
最佳答案
0

又是你……就是把你的panel加到frame中区,顾名思义,把面板放入框架中。。。可以换成tr.add(th);

 

收获园豆:10
stagebo | 初学一级 |园豆:132 | 2016-10-29 22:32

那它和

JFrame tr=new JFrame();

JPanel th;

th=new  JPanel();

Container tain=new setContentPane();

tain.add(th)

梦再笑 | 园豆:55 (初学一级) | 2016-10-29 22:41

@梦再笑:你是要问直接add和先add到ContentPanel再把contentpanel添加到frame的区别吗?

j2ee老版本不支持直接add,需要ContentPanel这样一个中间介质,现在的新版本可以直接add了。。所以呢……实质上可能没啥区别,看swing内部怎么实现了。

stagebo | 园豆:132 (初学一级) | 2016-10-29 22:46

@stagebo: 你去试试JFrame创建的对象,然后直接用该对象设置背景颜色,是不可以的。必须使用Container x=对象.getcontentpanel(); ,然后用x去设置背景才可以的·!

梦再笑 | 园豆:55 (初学一级) | 2016-10-29 23:25
其他回答(1)
-2

JFrame tr=new JFrame();即图中这么个窗口

JPanel th=new  JPanel();即图2中红色矩形区域

tr.setContentPane(th);意思是把这个矩形区域大小的东西放到窗口上

你加个tr.show();拿main方法就能运行出来

 

新手娃娃菜 | 园豆:256 (菜鸟二级) | 2016-10-28 11:25

那它和

JFrame tr=new JFrame();

JPanel th;

th=new  JPanel();

Container tain=new setContentPane();

tain.add(th)

这两个的具体区别有什么? 原问题中的那个怎么体现出了中间容器呢?

支持(0) 反对(0) 梦再笑 | 园豆:55 (初学一级) | 2016-10-28 12:56
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册