Java Swing中的Container有什么用啊?

JFramejf=newJFrame();jf.setLayout(newGridLayout(5,1,5,5));jf.add(newJButton("first"))... JFrame jf = new JFrame();
jf.setLayout(new GridLayout(5,1,5,5));
jf.add(new JButton("first"));



JFrame jf = new JFrame();
Container ct = jf.getContentPane();
ct.setLayout(new GridLayout(5,1,5,5));
ct.add(new JButton("first"));

这两个程序段似乎都能运行,那么还用Container ct = jf.getContentPane();做什么呢,是不是在Container上添加组件比直接在JFrame上添加有什么好处呢?
展开
 我来答
幻之谁愚
2015-10-18 · TA获得超过4.4万个赞
知道大有可为答主
回答量:1.2万
采纳率:77%
帮助的人:924万
展开全部
container类是一个公共的抽象基类,可以用于依赖注入。控制子类对象实例的实现。
  用法:
  java.awt 中 Container 的子类
  class Dialog
  Dialog 是一个带标题和边界的顶层窗口,边界一般用于从用户处获得某种形式的输入。
  class FileDialog
  FileDialog 类显示一个对话框窗口,用户可以从中选择文件。
  class Frame
  Frame 是带有标题和边框的顶层窗口。
  class Panel
  Panel 是最简单的容器类。
  class ScrollPane
  实现用于单个子组件的自动水平和/或垂直滚动的容器类。
  class Window
  Window 对象是一个没有边界和菜单栏的顶层窗口。
如梦★初醒℃
2013-10-15 · TA获得超过346个赞
知道小有建树答主
回答量:293
采纳率:66%
帮助的人:183万
展开全部
下面的是传统的写法,也就是说JFrame上是不能直接设布局、添加组件的,它上面其实是有一个面板,添加的组件是加到那个面板上。但后来的JDK简化了这一写法,你直接给JFrame添加组件,它会自动将这个动作转发给那个面板。但需要注意的是,有些操作还是必须用下面那种写法的,比如你想给窗口设置背景色,那么直接给JFrame设是没用的,必须先get那个面板再给它设置背景色才有效。
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式