Java JPanel布局-指定宽度后的新行

Java JPanel布局-指定宽度后的新行,java,swing,layout,jpanel,layout-manager,Java,Swing,Layout,Jpanel,Layout Manager,我有一个应用程序,用户可以为目录中的文件定义标记。一个目录可以通过JCheckBox isntances分配标记,每个标记一个,我将保存在一个JPanel中。 这意味着JCheckBox的数量将取决于用户创建的标记数量,每个JCheckBox的宽度将取决于单个标记的名称长度 我想要做的是能够告诉持有这些jcheckbox的JPanel始终具有XXX像素的宽度(本质上是设置其尺寸)。然后,我希望它能够理解何时添加了一个新标记,这会使宽度超过限制,并通过将JCheckBox放在新行来做出反应 如果您

我有一个应用程序,用户可以为目录中的文件定义标记。一个目录可以通过JCheckBox isntances分配标记,每个标记一个,我将保存在一个JPanel中。 这意味着JCheckBox的数量将取决于用户创建的标记数量,每个JCheckBox的宽度将取决于单个标记的名称长度

我想要做的是能够告诉持有这些jcheckbox的JPanel始终具有XXX像素的宽度(本质上是设置其尺寸)。然后,我希望它能够理解何时添加了一个新标记,这会使宽度超过限制,并通过将JCheckBox放在新行来做出反应


如果您碰巧知道如何通过占用两行文本来强制JCheckbox的文本不超过一定的宽度,那也很好,因为我可以在JPanel中使用GridLayout。

将复选框放置在一个带有FlowLayout的JPanel中,该布局将处理包装。@JoopEggen有点滑稽,我是在读到FlowLayout不是这样工作的之后来到这里的,但它似乎是这样的(如果您设置面板的首选大小),是的,首选大小在swing布局中几乎无处不在。