2016-09-25 12 views
1

私はこのコードを試してみましたが、それはすべてテキストでした。主なスクリプトは次のとおりです。背景が表示されないのはなぜですか?

import java.awt.Color; 
import java.awt.DisplayMode; 
import java.awt.Font; 
import java.awt.Graphics; 

import javax.swing.JFrame; 

public class Main extends JFrame{ 
    public static void main(String[] args) { 
     DisplayMode dm = new DisplayMode(800, 600, 32, DisplayMode.REFRESH_RATE_UNKNOWN); 
     Main m = new Main(); 
     m.run(dm); 

    } 
    public void run(DisplayMode dm){ 
     setBackground(Color.PINK); 
     setForeground(Color.WHITE); 
     setFont(new Font("Arial",Font.PLAIN,24)); 
     Screen s = new Screen(); 
     try { 
      s.setFullScreen(dm, this); 
     try{ 
      Thread.sleep(5000); 
     }catch(Exception ex){} 
    }finally{ 
     s.RestoreScreen(); 
    } 
    } 
    public void paint(Graphics g){ 
     g.drawString("hello", 200, 200); 
    } 
} 

他の画面クラスは次のとおりです。

import java.awt.DisplayMode; 
import java.awt.Graphics; 
import java.awt.GraphicsDevice; 
import java.awt.GraphicsEnvironment; 
import java.awt.Window; 

import javax.swing.JFrame; 

public class Screen { 
    private GraphicsDevice gc; 
    public Screen(){ 
     GraphicsEnvironment env = GraphicsEnvironment.getLocalGraphicsEnvironment(); 
     gc = env.getDefaultScreenDevice(); 
    } 
    public void setFullScreen(DisplayMode dm, JFrame window){ 
     window.setUndecorated(true); 
     window.setResizable(false); 
     gc.setFullScreenWindow(window); 
     if (dm != null && gc.isDisplayChangeSupported()){ 
      try{ 
       gc.setDisplayMode(dm); 
      }catch(Exception ex){} 
     } 
    } 
    public Window getFullScreenWindow(){ 
     return gc.getFullScreenWindow(); 
    } 
    public void RestoreScreen(){ 
     Window w = gc.getFullScreenWindow(); 
     if(w != null){ 
      w.dispose(); 
     } 
     gc.setFullScreenWindow(null); 
    } 
} 

私のコードは、私が見たのチュートリアルに単語のための単語です:

https://thenewboston.com/videos.php?cat=30&video=17934

と彼が働いていました。また、16ビットのグラフィックスに切り替えると、ペイント方法は機能しません。助けてください!あなたのクラスのメインで

答えて

0

、公共ボイド実行タイプで:

Screen s = new Screen(); 
     try { 
      s.setFullScreen(dm, this); 
      try{ 
       Thread.sleep(5000); 
      }catch(Exception ex){} 
     }finally{ 
      s.RestoreScreen(); 
     } 
+0

ありがとうございます!しかし、画面は表示されません – user3150362

0

あなたはこの

window.setVisible(真を追加するには、フルスクリーンの方法では見え

のJFrameを設定するのを忘れ);

関連する問題