我有一个类扩展名为Row的JPanel。我已经加入到JLabel一堆行,代码如下:设置JPanel的大小
JFrame f=new JFrame();
JPanel rowPanel = new JPanel();
//southReviewPanel.setPreferredSize(new Dimension(400,130));
rowPanel.setLayout(new BoxLayout(rowPanel, BoxLayout.Y_AXIS));
rowPanel.add(test1);
rowPanel.add(test1);
rowPanel.add(test2);
rowPanel.add(test3);
rowPanel.add(test4);
rowPanel.setPreferredSize(new Dimension(600, 400));
rowPanel.setMaximumSize(rowPanel.getPreferredSize());
rowPanel.setMinimumSize(rowPanel.getPreferredSize());
f.setSize(new Dimension(300,600));
JScrollPane sp = new JScrollPane(rowPanel);
sp.setSize(new Dimension(300,600));
f.add(sp);
f.setVisible(true);
test1的地方...等是行。但是,当我调整窗口的大小时,该行的布局会变得混乱(它也会调整大小)......我怎样才能防止这种情况发生?
我改变了使用getPreferredSize和setMaximumSize如上所示(请参阅我的编辑的代码)...仍然,因为代码甚至不存在。如果我有边界布局呢?我如何设置尺寸?它没有提到你上面给出的链接上的BorderLayout – aherlambang 2010-11-19 04:57:26
http://download.oracle.com/javase/tutorial/uiswing/layout/border.html – Cesar 2010-11-19 05:01:09
你编辑的代码不是SSCCE。是的,链接确实提到了BorderLayout。您无法在6分钟内阅读完整部分!布局管理器处理添加到面板的组件,而不是面板本身。 – camickr 2010-11-19 05:07:32