4

布局

请参阅所附图片。我是 Java GUI 的初学者,希望有人可以指导我为这样的 GUI 选择布局管理器。我知道我可能不得不使用嵌套的布局管理器,但我不确定哪个可以帮助我完成这项工作。

4

2 回答 2

5

这是一个想法:

  • 在主 JPanel 中使用 BorderLayout。在 CENTER 部分设置 JList
  • 在上述布局的 EAST 部分,添加一个新的 JPanel,其 GridLayout 为 6 行 2 列
  • 在 GridLayout 上,按照定义的顺序添加每个标签、按钮、文本字段等 - 从上到下和从左到右。

或者:您可以使用 7x2 GridLayout 并用空文本字段填充按钮上方的两个位置,以将上方的标签/字段与下方的按钮分开。

于 2013-02-26T21:30:24.677 回答
5

查看DesignGridLayout,我认为它非常适合这种形式

看看他们的例子:

在此处输入图像描述

只需几行干净的代码:

    layout.row().grid(label("Last Name"))   .add(lastNameField) .grid(label("First Name"))  .add(firstNameField);
    layout.row().grid(label("Phone"))       .add(phoneField)    .grid(label("Email"))       .add(emailField);
    layout.row().grid(label("Address 1"))   .add(address1Field);
    layout.row().grid(label("Address 2"))   .add(address2Field);
    layout.row().grid(label("City"), 1)     .add(cityField);
    layout.row().grid(label("State"))       .add(stateField)    .grid(label("Postal Code")) .add(postalField);
    layout.row().grid(label("Country"), 1)  .add(countryField);
    layout.emptyRow();
    layout.row().center().add(newButton).add(deleteButton).add(editButton).add(saveButton).add(cancelButton);
于 2013-02-26T21:37:06.987 回答