[英]how to set preferedsize for jtree in jscrollpane
我试图在borderlayout(WEST)中设置jscrollpane的首选宽度。但它不起作用
请查看我的示例代码
JTree tree=new JTree(root);
JScrollPane jsp=newJScrollPane(tree);
jsp.setBounds(0,0,200,100);
Jframe.add(jsp,BorderLayout.WEST);
但它显示默认宽度。
或者我尝试为JTree设置首选大小,它工作正常,但jscrollpane无法正常工作。请帮助我。
布局管理器根据组件的大小(最小/最大/首选)确定组件的位置。 因此,您对setBounds
的调用将被忽略,而BorderLayout
将确定它放置组件的位置。
通常这个机制工作正常。 JScrollPane
的问题在于它的大小提示可能与您想要的行为不同步(由于滚动窗格可以有滚动条,因此它可以确定自己的大小)。
解决方案:在添加之前,只需在JScrollPane
上调用setPreferredSize
。 这也是在官方教程中完成的,我只能想到调用此方法是可以接受的。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.