在XNA 4.0中最大化窗口

时间:2013-09-10 10:57:51

标签: c# xna xna-4.0 maximize

我目前正在使用以下代码来允许用户调整窗口大小并使其最大化:

Window.AllowUserResizing = true; 
Window.ClientSizeChanged += Window_ClientSizeChanged; 

Window_ClientSizeChanged事件处理更改并重新缩放绘制的图像等。

这允许我按照我想要的大小调整窗口大小,并使用窗口手柄中的标准按钮最大化它。我希望能够以最大化模式启动窗口应用程序,但无法弄清楚如何执行此操作。我知道我可以使用graphics.IsFullScreen = true;以全屏模式显示它,但我希望能够以最大化的窗口模式运行程序。有什么想法吗?

1 个答案:

答案 0 :(得分:2)

您可以将此代码放在构造函数中以执行您想要的操作:

Form form = (Form)Control.FromHandle(Window.Handle);
form.WindowState = FormWindowState.Maximized;

这要求您向项目添加System.Windows.Forms的引用。

这确实有缺点,它实际上在启动时设置了两次图形设备。一旦进入正常方式,然后再次因为窗口被调整大小。 (虽然这一切都是在首次显示表单之前发生的。)

它的优点是实现起来非常简单。


我要捅一会儿,看看初始化顺序是否可以改变......

似乎没有简单的方法来解决这个问题。