java - 如何在面板上有 2 个组件列表

标签 java swing layout layout-manager

我想要在面板上垂直对齐文本字段和标签的列表,每个标签对应于适当的文本字段并显示在 UI 上的旁边。文本字段中的值稍后将被另一个函数调用。

问题是我似乎无法正确布局。我尝试过使用 Spring Layout,但我无法理解它......基本上我可以用其他方式做到这一点吗?我目前正在使用面板的框布局,但它仅显示文本字段列表,其下方有标签列表。我仍然是一个菜鸟,我真的需要一些新的投入。任何帮助将不胜感激,谢谢。

最佳答案

您可以简单地使用GridBagLayout(尽管MigLayout也可能值得一看)...

setLayout(new GridLayout());
GridBagConstraints gbc = new GridBagConstraints();
gbc.gridx = 0;
gbc.gridy = 0;
for (int index = 0; index < 10; index++) {
    gbc.anchor = GridBagConstraints .EAST;
    gbc.gridx = 0;
    add(new JLabel("Label " + index), gbc);
    gbc.anchor = GridBagConstraints .WEST;
    gbc.gridx++;
    add(new JTextField(10), gbc);
    gbc.gridy++;
}

现在,显然,这只是一个用于演示该概念的示例,您需要扩展该想法并将其应用于您的特定问题......

看看How to use GridBagLayout了解更多详情

关于java - 如何在面板上有 2 个组件列表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24481195/

相关文章:

java - @Nullable 似乎不适用于 @AssistedInject

java - 如何从左到右计算表达式

java - JComboBox 不允许我用数组启动它

css - 笔记本电脑与台式机的风格

Java JSON 奇怪的错误

java - 如何设置JTabbedPane Tab高度宽度背景前景色(选中和未选中Tab)

java - java中读取属性文件的NullPointerException

java - Swing 重叠组件

jquery - HTML5 桌面/移动博客 - jQuery UI 还是 jQuery Mobile?

java - <T> Stream<T> - 不理解这个返回类型