1

我正在尝试JSeparator在 a中添加一个Panelin GridBagLayout,但它没有出现。

我尝试了类似的选项

panel.add(new JSeparator());

panel.add(new JSeparator(SwingConstants.HORIZONTAL));

他们都没有给出可见的分隔符。

4

1 回答 1

3

阅读 Swing 教程中有关如何使用分隔符的部分,您将在其中找到以下语句:

分隔符几乎没有 API 并且非常容易使用,只要记住一件事:在大多数实现中,垂直分隔符的首选高度为 0,水平分隔符的首选宽度为 0。这意味着分隔符除非您设置其首选大小或将其置于布局管理器(如 BorderLayout 或 BoxLayout)的控制下,否则它是不可见的,该管理器将其拉伸以填充其可用显示区域。

因此,如果将它与 a 一起使用GridBagLayout,则需要指定适当的约束,以便分隔符填充给定行的所有列。阅读 Swing 教程中有关如何使用 GridBagLayout的部分,以获取有关约束和工作示例的更多信息。本教程演示了如何让按钮填充 3 列,因此请尝试用分隔符替换按钮。

于 2016-04-27T05:32:34.260 回答