如何在单游戏中设置固定窗口大小?

问题描述 投票:0回答:2

我正在制作一个简单的游戏作为最终项目展示。它将在窗口内显示一个 .bmp 框架,并且我无意在游戏运行时调整窗口大小,因此我想修复窗口的大小。问题是,当我运行通过在 Visual Studio 2012 中选择 monogame 游戏创建的项目时,它以全屏模式启动。我尝试用这段代码修复它:

_graphics.IsFullScreen = false;
_graphics.PreferredBackBufferWidth = 640;
_graphics.PreferredBackBufferHeight = 480;
_graphics.Applychanges();

我已将其放入主游戏类的构造函数和初始化函数中,但它什么也没做。我正在使用 monogame 3.0.

c# windows-8 fullscreen monogame
2个回答
3
投票

尝试将其放在Initialize方法中而不是构造函数中。

应该解决这个问题:

protected override void Initialize()
{
    _graphics.IsFullScreen = false;
    _graphics.PreferredBackBufferWidth = 640;
    _graphics.PreferredBackBufferHeight = 480;
    _graphics.ApplyChanges();

    base.Initialize();
}

1
投票

调整窗口大小的最佳方法是使用“GraphicsDeviceManager”。 像这样设置图形

private GraphicsDeviceManager _graphics;

然后将你的代码写入到initialize方法中(注意大写字母):

 protected override void Initialize()
    {
        _graphics.PreferredBackBufferWidth = 640;
        _graphics.PreferredBackBufferHeight = 480;
        _graphics.ApplyChanges();

        base.Initialize();
    }
© www.soinside.com 2019 - 2024. All rights reserved.