我正在使用myFrame.setSize(Xsize,Ysize)设置JFrame大小,但它给我一个问题:这不会定义框架中的可用空间,而是整个框架的大小(包括Windows Manager框架)大小,并不总是相同的)。 有没有办法通过定义可用的空间大小来定义JFrame大小?
答案 0 :(得分:4)
通常最好的方法是对帧的内容设置setPreferredSize(),然后调用pack()。
如果那是不可能的,那么我认为只要框架完全可见,在窗口上调用getInsets()就会获取窗口管理器框架的大小(你可能需要使用一个监听器并等到windowOpened()事件)。我实际上没有在X上试过这个,但它确实适用于Windows。这种方法的缺点是框架出现然后调整大小。您可以在屏幕上启动它,然后在有插图后将其移动到可见位置。