0

是否有可能如果我在两种模式之间切换并绘制东西来调整它们,以便在窗口模式下绘制的东西看起来像在全屏模式下一样,但实际上更小......

这就是我的代码:

构造函数:GraphicsEnvironment gfxEnvironment = GraphicsEnvironment.getLocalGraphicsEnvironment();

GraphicsDevice gfxDevice = gfxEnvironment.getDefaultScreenDevice();

私人布尔全屏=真;// 不是真的那样

如果(答案 == JOptionPane.YES_OPTION){

        setUndecorated(true);
        setAlwaysOnTop(true);
        DisplayMode getMode = gfxDevice.getDisplayMode();
        DisplayMode displayMode = new DisplayMode(getMode.getWidth(), getMode.getHeight(), getMode.getBitDepth(), getMode.getRefreshRate());
        gfxDevice.setFullScreenWindow(Frame.this);
        gfxDevice.setDisplayMode(displayMode);
        fullscreen = true;
    } else {
        setUndecorated(false);
        setVisible(true);
        setSize(800, 600);
        setLocationRelativeTo(null);
        setResizable(false);
        fullscreen = false;
    }

切换屏幕: if(fullscreen) {

        dispose();
        setUndecorated(false);
        gfxDevice.setFullScreenWindow(null);
        setSize(800, 600);
        setLocationRelativeTo(null);
        setVisible(true);
        fullscreen = false;
    } else {
        setVisible(false);
        dispose();
        setUndecorated(true);
        gfxDevice.setFullScreenWindow(Frame.this);
        fullscreen = true;
    }

绘制:私人无效绘制(图形g){

    g.setColor(Color.RED);
    g.fillRect(0, 0, 400, 800);
}

那么如何调整矩形呢?谢谢:)

4

1 回答 1

0

您可以根据屏幕尺寸绘制矩形。因此,它基于窗口宽度和高度的一小部分,java.awt.GraphicsEnvironment.getLocalGraphicsEnvironment().getMaximumWindowBounds().width;java.awt.GraphicsEnvironment.getLocalGraphicsEnvironment().getMaximumWindowBounds().height; 不是固定像素值。

于 2014-06-25T14:57:34.930 回答