在设置JPanel
大小的时候,要用JPanel.setPreferredSize()这个方法才行.然后再用borderLayout就可以设置上下左右的宽度了。\x0d\x0a\x0d\x0asetSize()是手动设置组建的大小。Dimension类封装对象中组建的宽度和高度(精确到整数)。setPreferredSize设置此
组件的首选大小。\x0d\x0a在用java编程时,有时需要设置JPanel的大小,而JPanel的setSize()方法不管用。\x0d\x0a在使用
布局管理器的时候,可以不适用setSize(),因为布局管理器会自动调用组件的setSize()方法设置组件的大小。即时用户调用setSize方法设置组件大小,最终可能被覆盖。\x0d\x0aset(Preferred/Minimal/Maximum)Size(),他们只是给父组件或布局管理器他们能得到多少空间的暗示而已,非强制立即执行效果,或通过pack或revalidate(JFrame无)进行效果实现。第一个问题我不敢妄断,我认为你之所以被挤压而不得完全显示,是因为你那个Panel的布局不合理,但我并不知道你使用了什么布局。
第二个问题,你可以在顶上那个Panel中放两个子Panel,分别放两行的内容。布局管理器用Grid或者BOx这样能够竖直方向上排布组件的管理器。
事实上我认为解决了第二个问题后,第一个问题也会得到解决。
评论列表(0条)