我的问题说明了一切 .
这是我的代码:
fullscreen.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
MainMenu.isFullscreen = true;
}
});
全屏是JButton .
然后在我的Screen类中:
if(mm.isFullscreen){
GraphicsEnvironment.getLocalGraphicsEnvironment().getDefaultScreenDevice().setFullScreenWindow(this);
repaint();
}
mm是MainMenu的减速度 . 当mm.isFullscreen为false时,屏幕是正常大小 .
我想我在某处读到ActionListeners无法改变ActionListener之外的东西......?
编辑:
我已经修复了isue感谢您的帮助,但这是新代码:
在屏幕类中:
public void setFullscreen(){
GraphicsEnvironment.getLocalGraphicsEnvironment().getDefaultScreenDevice().setFullScreenWindow(this);
repaint();
}
在mainMenu类中:
fullscreen.addActionListener(new ActionListener(){
public void actionPerformed(ActionEvent e) {
if(isFullscreen) {
isFullscreen = false;
}
if(!isFullscreen) {
isFullscreen = true;
screen.setFullScreen();
}
});
1 回答
设置
isFullscreen = false;
时,您没有更改全屏窗口的状态!您可以使用
GraphicsDevice#setFullScreenWindow(null);
将其设置回窗口模式 .