【发布时间】:2012-07-08 12:24:42
【问题描述】:
这里提到:Adding Components to the Content Pane,
默认内容窗格是一个简单的中间容器, 继承自 JComponent,并使用 BorderLayout 作为其布局 经理。
这是一个证明:
JFrame frame = new JFrame();
LayoutManager m = frame.getContentPane().getLayout();
System.out.println(m instanceof BorderLayout); // prints true
但是,你能解释一下下面代码的输出吗?
JFrame frame = new JFrame();
LayoutManager m = frame.getContentPane().getLayout();
System.out.println(m);
System.out.println(m.getClass().getName());
LayoutManager m2 = new BorderLayout();
System.out.println(m2);
System.out.println(m2.getClass().getName());
输出:
javax.swing.JRootPane$1[hgap=0,vgap=0]
javax.swing.JRootPane$1
java.awt.BorderLayout[hgap=0,vgap=0]
java.awt.BorderLayout
【问题讨论】:
-
如有疑问,请阅读源代码:-)
标签: java swing jframe border-layout contentpane