我想复制这里显示的例子:
使用MiGLayout。我尝试了一些组合,但我是 很难让按钮自动换行 容器缩小时的新行。
有人可以提供一个有效的例子吗?
这是程序的shell:
import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JPanel;
import net.miginfocom.swing.MigLayout;
public class MiGTest extends JFrame{
private JPanel jPanel;
private JButton jButton;
public static void main(String[] args) {
new MiGTest().setVisible(true);
}
public MiGTest(){
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
setLayout(new MigLayout("debug"));
initComponents();
addComponents();
pack();
}
private void addComponents() {
add(jPanel);{
for (int i = 0; i < 10; i++) {
jPanel.add(new JButton("" + i));
}
}
}
private void initComponents() {
jPanel = new JPanel(new MigLayout("debug"));
jButton = new JButton("Test");
}
}
答案 0 :(得分:9)
根据MiGLayout的创建者和以下问题的答案:
http://migcalendar.com/forums/viewtopic.php?f=8&t=3421
http://migcalendar.com/forums/viewtopic.php?f=8&t=2270&hilit=wrap+container
http://migcalendar.com/forums/viewtopic.php?f=8&t=2015&hilit=wrap+container
http://migcalendar.com/forums/viewtopic.php?f=8&t=1137&hilit=wrap+container
,MiGLayout很不支持这个。它也不支持 包裹在一个单元格内。
答案 1 :(得分:0)
我一直在声明.width(“xx%”)然后在行的宽度加起来为100%时调用wrap。如果您可以将每个组件声明为行的某个百分比(它们不必都是相同的百分比),则此方法有效。