我正在学习Swings,我对这一行感到困惑
GroupLayout layout=new GroupLayout(getContentPane());
现在我有两个问题
答案 0 :(得分:6)
getContentPane()返回什么
它返回组件的内容窗格
您可以阅读更多here
为什么我们将它传递给GroupLayout,我的意思是getContentPane()是怎样的 用于分组布局
这就是GroupLayout的实施方式。
构造
GroupLayout(Container host)
为指定的Container创建GroupLayout。请参考javadoc for more
答案 1 :(得分:2)
getContentPane()返回什么。 [我看到了文档并且更加困惑]
JFrame的getContentPane()函数返回Container对象,您可以在JFrame上添加其他组件。
为什么我们将它传递给GroupLayout,我的意思是如何将getContentPane()用于组布局
GroupLayout layout = new GroupLayout(getContentPane());
功能
/**
* Creates a {@code GroupLayout} for the specified {@code Container}.
*
* @param host the {@code Container} the {@code GroupLayout} is
* the {@code LayoutManager} for
* @throws IllegalArgumentException if host is {@code null}
*/
public GroupLayout(Container host) {
if (host == null) {
throw new IllegalArgumentException("Container must be non-null");
}
honorsVisibility = true;
this.host = host;
setHorizontalGroup(createParallelGroup(Alignment.LEADING, true));
setVerticalGroup(createParallelGroup(Alignment.LEADING, true));
componentInfos = new HashMap<Component,ComponentInfo>();
tmpParallelSet = new HashSet<Spring>();
}
此构造函数语句为指定容器创建GroupLayout。