1

使っています

getContentPane().setBackground(Color.PINK);

JFrame の背景をピンク色に設定します。この JFrame は、GraphicsDevice を使用してフルスクリーン化されています。背景の色は変わりません。助けはありますか?

フルスクリーン コード:

public static void main(String... args) {
     DisplayMode dMode = new DisplayMode(800, 600, 16, DisplayMode.REFRESH_RATE_UNKNOWN);
     GameMain game = new GameMain();
     game.run(dMode);

 }

 public void run(DisplayMode dMode) {
     getContentPane().setBackground(Color.PINK);
     setForeground(Color.WHITE);
     setFont(new Font("Arial", Font.PLAIN, 24));

     Screen s = new Screen();
     try {
         s.setFullScreen(dMode, this);
         try {
             Thread.sleep(5000);
         } catch(Exception e) { }
     } finally {
         s.restoreScreen();
     }

}

 public void setFullScreen(DisplayMode dMode, JFrame window) {
    window.setUndecorated(true);
    window.setResizable(false);
    gDevice.setFullScreenWindow(window);

    if(dMode != null && gDevice.isDisplayChangeSupported()) {
        try {
            gDevice.setDisplayMode(dMode);
        } catch(Exception e) { }
    }
}
4

1 に答える 1

3

これは私にとってはうまくいきます...

public class TestFullScreen {

    public static void main(String[] args) {

        EventQueue.invokeLater(new Runnable() {
            @Override
            public void run() {

                FullFrame frame = new FullFrame();
                frame.setUndecorated(true);
                frame.getContentPane().setBackground(Color.PINK);

                GraphicsEnvironment ge = GraphicsEnvironment.getLocalGraphicsEnvironment();
                GraphicsDevice[] gs = ge.getScreenDevices();

                gs[0].setFullScreenWindow(frame);

            }
        });

    }

    public static class FullFrame extends JFrame {

        public FullFrame() {
            super();

            addMouseListener(new MouseAdapter() {
                @Override
                public void mouseClicked(MouseEvent e) {
                    System.exit(0);
                }
            });

        }
    }
}

setBackground通話後に通話を移動するように設定しましたsetFullScreenWindow

コンテンツ ペインにすべてのスペースを占有している可能性があるものがないこと、およびコンテンツ ペインが変更されていないことを確認してください。

于 2012-10-10T03:12:55.067 に答える