使用GroupLayout在彼此之上呈现的组件

时间:2012-01-03 10:48:48

标签: java swing layout-manager grouplayout

我试图学习如何使用Java Swing的GroupLayout。

首先,我只想制作一个由JLabels制作的网格。

我遇到的问题是JLabel直接渲染在彼此之上(即在完全相同的位置,以便一个遮挡另一个)。

以下是我的代码,其中应该是一列中的3个JLabel:

layout.setHorizontalGroup(
    layout.createSequentialGroup()
        .addGroup(layout.createParallelGroup(GroupLayout.Alignment.LEADING)
            .addComponent(one)
            .addComponent(two)
            .addComponent(three))
);
layout.setVerticalGroup(
    layout.createParallelGroup(GroupLayout.Alignment.LEADING)
        .addComponent(one)
        .addComponent(two)
        .addComponent(three)
);

如何正确定位标签。

由于

1 个答案:

答案 0 :(得分:4)

在垂直布局中,您还构建了一个并行组,而该组应该是顺序组(您不是要区分行而不是所有行)。

layout.setVerticalGroup(
    layout.createSequentialGroup()
    .addComponent(one)
    .addComponent(two)
    .addComponent(three)
);

备注:对于此示例,您也不需要水平布局中的顺序组。