我已经创建了一个JFrame,并且试图获得它的大小会产生不正确的结果,与我的预期相比。
我已经确定它包括边缘周围的操作系统边框和标题栏。
如何获取/设置我可用于渲染的实际大小?
答案 0 :(得分:5)
您获得的尺寸是内容的尺寸和 insets的尺寸。如果您使用Jcomponent.getInsets()
,则可以通过简单的减法找到内容的大小。
答案 1 :(得分:2)
你的问题很混乱:JPanels没有标题栏或窗口边框,它们是INSIDE JFrames的抽象容器。 JFrame是具有标题栏和窗口边框的对象。
JPanel.getSize()
应按预期工作。但是,对于JFrame,您需要使用JFrame.getContentPane().getSize()
,因为getContentPane()
会返回JPanel
(实际内容区域)。