我要說,如果它僅與物質的LaF發生,那麼它肯定聽起來像你應該報告的錯誤......但我只看見自己的編輯,然後再發布。祝你好運,勸說他們在4年後解決它!
在此期間,您可以嘗試的唯一真正的解決方法是獲取當前顯示屏的插頁並設置尺寸。下面是一些代碼能夠統計出的分辨率,範圍和多少可用空間可用在每臺監視器的:
public static void main(String... args) throws Exception {
GraphicsEnvironment ge = GraphicsEnvironment.getLocalGraphicsEnvironment();
GraphicsDevice[] gds = ge.getScreenDevices();
for (GraphicsDevice gd : gds) {
GraphicsConfiguration gc = gd.getDefaultConfiguration();
System.out.println("Bounds = " + gc.getBounds());
System.out.println("Insets = " + Toolkit.getDefaultToolkit().getScreenInsets(gc));
}
}
在雙屏幕Windows安裝程序像我有,這說明如下:
Bounds = java.awt.Rectangle[x=0,y=0,width=1280,height=1024]
Insets = java.awt.Insets[top=0,left=0,bottom=30,right=0]
Bounds = java.awt.Rectangle[x=1280,y=0,width=1280,height=1024]
Insets = java.awt.Insets[top=0,left=0,bottom=0,right=0]
注意在監視器1
底部的30像素的插圖現在,所有你需要做的工作是什麼屏幕運行應用程序上。如果您的應用程序窗口是JFrame
或Window
的任何其他子類,則可以使用Window.getGraphicsConfiguration()
獲取活動屏幕的圖形配置。
我希望幫助(也許這將有助於對物質的bug工作的人!)
感謝這麼多的回答(我是來條款與2個滾草徽章從連續2個問題的前景......寂寞的感覺!)。我不知道查詢插頁的正確方法。碰巧,我有一些類似的代碼讓窗口成爲全屏,我發現儘管邊界被設置爲整個屏幕的適當大小,但我也遇到了同樣的基本問題。無論如何,我需要現在去,但你的答案肯定是有幫助的。不幸的是物質現在沒有被維護,因爲這個人主要是在Android上工作。 – PeterT 2011-03-17 15:37:12
順便說一句,我會給你一個upvote(不是一個接受,因爲它不是一個真正的答案,它看起來像我將捲起袖子,並修改物質來解決這個問題)......但我已經開始upvoting,現在系統不會讓我重新開始upvote,除非你編輯你的答案。 – PeterT 2011-03-24 10:52:23
好的,我爲你做了一個不變的編輯。順便說一句,我相信這是你無法控制物質項目的人的最佳答案。對不起,這不是你想要的答案。 ;) – BoffinbraiN 2011-03-24 16:02:43