日期:2014-05-20  浏览次数:20881 次

动态向panel添加控件
用GridLayout布局格式,想点击按钮动态添加一个控件,怎么实现?
怎么动态修改gridlayout的行列?

------解决方案--------------------
JPanel pane = new JPanel(new GridLayout(3, 3));
for (int i = 0; i < 9; i++) {
pane.add(new JButton());
}
貌似必须得add 9个子控件才能达到3行3列的效果。

要实现你说的动态往GridLayout添加一个控件,似乎要自定义layout了,自定义一个LayoutManager的子类就行了。
------解决方案--------------------
可以调用JPanel的setLayout去改变行列数 然后再重新添加一次后显示 可能效率有点慢