"Inline"复选框列表 - 自动换行符



我有一个JPanel(由我的GeneralOptions类扩展)实现为:

public GeneralOptions() {
    setLayout(new MigLayout("", "[grow]", "[][][][]"));
    JLabel lblWyzywienie = new JLabel("Food");
    add(lblWyzywienie, "cell 0 0");
    JCheckBox chckbxHb = new JCheckBox("HB");
    add(chckbxHb, "cell 0 1");
    JCheckBox chckbxBb = new JCheckBox("BB");
    add(chckbxBb, "cell 0 1,alignx trailing");
    JCheckBox chckbxAll = new JCheckBox("All Inclusive");
    add(chckbxAll, "cell 0 1,alignx trailing");
}

可以看到,在MigLayout的一个单元格中有一个复选框列表。这个JPanel被放置在SplitPanel组件的左面板,所以它的宽度是可调整的。

我想要实现的是强制这个复选框列表像"内联"html复选框列表一样。这意味着,当面板宽度不足以在单行中显示它们时,它们应该断行。

现在我不能调整面板的大小低于整个列表的宽度,如果初始宽度小于这个列表的复选框,其中一些只是隐藏。

html代码示例http://jsfiddle.net/你可以试着调整右面板的大小看看我在说什么

看看下面的讨论:http://migcalendar.com/forums/viewtopic.php?f=8&t=2393

向下滚动查看代码。他实际上实现了自己的布局管理器,做你想要的。

最新更新