【发布时间】:2016-03-28 18:42:12
【问题描述】:
我正在尝试创建一个类,该类允许我选择我想要一个全屏窗口还是一个我选择大小的普通 JFrame 窗口。代码如下:
public class Frame extends JFrame {
boolean fse = false;
int fsm = 0;
GraphicsDevice device = GraphicsEnvironment.getLocalGraphicsEnvironment().getScreenDevices()[1];
public Frame(String title, int width, int height) {
setTitle(title);
setSize(width, height);
setLocationRelativeTo(null);
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
setResizable(false);
}
private void checkFullscreenMode() {
switch(fsm) {
case 0:
setUndecorated(false);
System.out.println("No Fullscreen");
break;
case 1:
setUndecorated(true);
setExtendedState(JFrame.MAXIMIZED_BOTH);
break;
case 2:
setUndecorated(true);
device.setFullScreenWindow(this);
break;
}
}
public void setFullscreenMode(int fsnm) {
fse = true;
if(fsm <= 2) {
this.fsm = fsnm;
}
else {
System.err.println("Error: Mode " + fsnm + " is not Supported!");
}
}
}
当我尝试调用 setFullscreenMode 方法时,它不起作用。无论我选择哪种模式,它都只给了我 1280 x 720 帧。我是这样称呼它的:
public class Main {
public static void main(String[] args) {
Frame frame = new Frame("TheDlooter", 1280, 720);
frame.setFullscreenMode(1);
frame.setVisible(true);
}
}
【问题讨论】:
标签: java swing graphics jframe