📄 scencemanger.java
字号:
package like.scence2D;
import java.awt.*;
import java.util.*;
/**
*实现场景全屏和窗口模式的切换以及场景间的切换
*/
public class ScenceManger
{
private Hashtable htPros;
private GraphicsDevice device;
/**
Creates a new SimpleScreenManager object.
*/
public ScenceManger()
{
GraphicsEnvironment environment =
GraphicsEnvironment.getLocalGraphicsEnvironment();
device = environment.getDefaultScreenDevice();
htPros = new Hashtable();
}
public Hashtable getHtPros() {return this.htPros;}
public boolean changeMode(Scence scence,int width,int height)
{
if(scence.ifFullScreen)
{
device.setFullScreenWindow(null);
return true;
}
else
{
//scence.setUndecorated(true);
scence.setResizable(false);
device.setFullScreenWindow(scence);
DisplayMode displayMode = new DisplayMode(width,
height,16,DisplayMode.REFRESH_RATE_UNKNOWN);
if (device.isDisplayChangeSupported())
{
try
{
device.setDisplayMode(displayMode);
}
catch (IllegalArgumentException ex)
{
ex.printStackTrace();
}
return true;
}
}
return false;
}//end method changeMode()
public void changeScence(Scence scence)
{
Window window = device.getFullScreenWindow();
if (window != null) {window.dispose();}
device.setFullScreenWindow(null);
//初始化新场景
if(scence!=null)
scence.init();
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -