Java 每列具有不同调整大小规则的按钮摆动网格
Java swing grid of buttons with different resize rules per column
我正在尝试制作一个类似于表单的 UI 面板(我没有使用 GUI 设计器)。左侧包含标签,右侧包含文本字段等。我想制作它,以便在调整大小时,只有正确的大小(文本字段,改变形状)。
目前,我正在使用 GridLayout(x, 2)
每行一个 JLabel
和 JTextField
。
所以在调整大小时,我想做到这一点
来自 [(JLabel)|(JTextField)]
至 [(JLabel)|( JTextField )]
不是 [( JLabel )|( JTextField )]
.
此外,当然,我需要确保所有行始终匹配。
GridLayout 不能用于此。使用 GridBagLayout 或更易于使用的布局管理器,例如 MigLayout。
如果您想使用单个布局管理器,您可以使用 GridBagLayout
。
对于第二列中的组件,您可以将 weightx
约束设置为 1.0f。这意味着任何额外的 space 将只分配给此组件。
阅读 How to Use GridBagLayout 上的 Swing 教程部分。 Specifying Constraints
上的主题将更详细地解释此约束的工作原理。
我正在尝试制作一个类似于表单的 UI 面板(我没有使用 GUI 设计器)。左侧包含标签,右侧包含文本字段等。我想制作它,以便在调整大小时,只有正确的大小(文本字段,改变形状)。
目前,我正在使用 GridLayout(x, 2)
每行一个 JLabel
和 JTextField
。
所以在调整大小时,我想做到这一点
来自 [(JLabel)|(JTextField)]
至 [(JLabel)|( JTextField )]
不是 [( JLabel )|( JTextField )]
.
此外,当然,我需要确保所有行始终匹配。
GridLayout 不能用于此。使用 GridBagLayout 或更易于使用的布局管理器,例如 MigLayout。
如果您想使用单个布局管理器,您可以使用 GridBagLayout
。
对于第二列中的组件,您可以将 weightx
约束设置为 1.0f。这意味着任何额外的 space 将只分配给此组件。
阅读 How to Use GridBagLayout 上的 Swing 教程部分。 Specifying Constraints
上的主题将更详细地解释此约束的工作原理。