微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

如何为面板内的列提供固定列宽?

如何解决如何为面板内的列提供固定列宽?

如果我想在面板内拥有一组具有固定列跨度的列,最好的 Swing 布局是什么?

类似于以下内容

desired column layout

我希望第一列跨越面板宽度的 20%,第二列跨越面板宽度的 50%,第三列跨越面板宽度的 30%

解决方法

Oracle's 网站上有关于 Java Swing 布局的出色视觉指南。

对于您的情况,GridBagLayout 将是您的最佳选择,即使它是最复杂的。您还可以使用其他布局,尽管这取决于您实际尝试执行的操作。您可以查看 GridLayoutBoxLayoutBorderLayout 甚至默认布局 (FlowLayout) 都可以工作。

你也可以看看 JTable,因为你写的是列,我注意到左边的小圆圈看起来像一个索引号或其他东西,但我可能是错的。也许你正在尝试做一种表格......

,

我的结果:

My result

你可以使用 MigLayout 库,它对 java 布局很有用 对于我的示例代码

 panel.setLayout(new MigLayout());
 panel.add(new JTextField(),"w 20%");
 panel.add(new JTextField(),"w 50%");
 panel.add(new JTextField(),"w 30%");

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。