我正在学习java中的游戏开发。我刚学会制作全屏,文字" Hello World"正在出现,但背景是黑色的。我在'中将它设置为蓝色。 GD类中的setFullScreen()'方法。根据我的知识,我找不到问题的核心,因为我发现代码中没有任何问题。
GD类:
package gd;
import java.awt.*;
import javax.swing.JFrame;
public class GD {
private GraphicsDevice vc;
public GD(){
GraphicsEnvironment env=GraphicsEnvironment.getLocalGraphicsEnvironment();
vc=env.getDefaultScreenDevice();
}
public void setFullScreen(DisplayMode dm,JFrame window){
window.setUndecorated(true);
window.setResizable(false);
window.setBackground(Color.RED);
window.setForeground(Color.BLUE);
window.setFont(new Font ("Arial", Font.PLAIN, 24));
vc.setFullScreenWindow(window);
if(dm != null && vc.isDisplayChangeSupported()==true ){
try{
vc.setDisplayMode(dm);
}catch(Exception ex){
}
}
}
public Window getFullScreen(){
return vc.getFullScreenWindow();
}
public void restoreScreen(){
Window w=vc.getFullScreenWindow();
if(w!=null){
w.dispose();
}vc.setFullScreenWindow(null);
}
}
课堂游戏(主要课程)
package gd;
import java.awt.*;
import javax.swing.JFrame;
public class game extends JFrame {
public static void main(String[]args){
DisplayMode dm=new DisplayMode(800,600,16,DisplayMode.REFRESH_RATE_UNKNOWN);
game g= new game();
g.run(dm);
}
public void run(DisplayMode dm)
{
GD s=new GD();
try{
s.setFullScreen(dm, this);
try{
Thread.sleep(4000);
}catch(Exception ex){
}finally{
s.restoreScreen();
}
}catch(Exception ex){
}
}
@Override
public void paint(Graphics g){
g.drawString("Hello World",200,200);
}
}