我在一个JDesktopPane desktopPane里面有一个JFrame。我希望这个桌面只能占用一定的空间,这样用户就可以看到JFrame右侧的内容。我尝试使用setBounds(...)和setPreferredSize(..)方法与desktopPane,但无法消除所需的结果。desktopPane占据整个框架,未使用的空间显示由desktopPane.setBackground(..)定义的背景色。有什么方法可以让JDesktopPane只占用JFrame中所需的空间吗?
发布于 2014-12-13 12:53:06
JFrame默认使用BorderLayout,其默认(CENTER)位置需要占用可用的可用空间。
JDesktopPane通常有一个0x0的首选大小,这使得它可以玩的很好。
您可以尝试其他布局管理器,但您需要首先克服默认首选大小的问题。
有关更多细节,请参见在容器中布局组件
问题是,为什么?MDI通常想要占据屏幕上最大份额的房地产。
https://stackoverflow.com/questions/27458779
复制相似问题