JFrame全屏問題

2021-08-31 17:38:15 字數 885 閱讀 9666

jframe可以通過

setextendedstate(jframe.maximized_both);

來達到全屏的效果。

但是比較奇怪的是,如果乙個frame是單獨執行,上面的語句會全屏(遮住windows工作列),如果是被另外乙個dialog呼叫(比如輸入登入密碼後出現frame),就會變成一般windows狀態(最大化,不遮住windows工作列)。

如果是乙個frame開啟另外乙個frame,也會有遮住windows工作列的效果。無法掌握其實際規律,只能自己設定他的大小來控制全屏或者最大化效果:

1. 不遮住工作列:

dimension   screensize   =   toolkit.getdefaulttoolkit().getscreensize();  

rectangle   bounds   =   new   rectangle(screensize);  

insets   insets   =   toolkit.getdefaulttoolkit().getscreeninsets(getgraphicsconfiguration());  

bounds.x   +=   insets.left;  

bounds.y   +=   insets.top;  

bounds.width   -=   insets.left   +   insets.right;  

bounds.height   -=   insets.top   +   insets.bottom;   

setbounds(bounds);  

2. 遮住工作列:

getgraphicsconfiguration().getdevice().setfullscreenwindow(this);   

JFrame全屏設定

首先我們來看一下如何讓視窗 比如說jframe 的標題欄不顯示呢?其實很簡單,只需要呼叫frame類中的setundecorated 方法就可以讓frame視窗失去邊框和標題欄的修飾了。示例如下 jframe f new jframe test frame f.setundecorated true...

在 Linux下 JFrame 進入全屏失敗

執行環境 hiweed 1.0 final,xfce,jre 1.5.0.06 code this.setextendedstate maximized both this.setundecorated true this.setsize toolkit.getdefaulttoolkit gets...

Android全屏與非全屏問題

設定全屏一般常用的方法有2種。一,在andriodmanifest.xml檔案中設定 android theme android style theme.light.notitlebar.fullscreen true true 然後我們就可以使用這個theme了 android allowback...