我創建了一個JFrame,並試圖獲得它的大小給出了一個不正確的結果,與我的預期相比。JFrame:獲取實際內容大小
我確定它包括邊緣周圍的操作系統邊框和標題欄。
如何獲取/設置我可用於渲染的真實大小?
我創建了一個JFrame,並試圖獲得它的大小給出了一個不正確的結果,與我的預期相比。JFrame:獲取實際內容大小
我確定它包括邊緣周圍的操作系統邊框和標題欄。
如何獲取/設置我可用於渲染的真實大小?
你的問題很混亂:JPanels沒有標題欄或窗口邊框,它們是抽象的容器,它們是INSIDE JFrames。 JFrames是帶有標題欄和窗口邊框的對象。
JPanel.getSize()
應該按預期工作。但是,對於JFrame,您需要使用JFrame.getContentPane().getSize()
,因爲getContentPane()
返回JPanel
(這是實際的內容區域)。
你確定它是'JPanel'而不是'JFrame'嗎?如果是後者,請使用'frame.getContentPane()。getSize()'。你也可以找到[這個問題](http://stackoverflow.com/questions/2796775/setting-the-size-of-a-contentpane-inside-of-a-jframe)有用... –
哦,對不起,是的,這是一個JFrame。我不能相信我把他們弄混了。道歉,我解決了這個問題。 –
*「這可能是因爲我錯誤的措辭」*更可能你的整個方法是錯誤的。自定義渲染組件更常見的問「我有多大?」。對於其他任何事情,佈局應該自動處理大小,沒有應用程序。曾經詢問尺寸或尺寸。 –