How do I set the window / screen size in xna?

和自甴很熟 提交于 2019-11-28 16:48:39

As of XNA 4.0 this property is now found on the GraphicsDeviceManager. Ie. this code would go in your Game's constructor.

graphics = new GraphicsDeviceManager(this);
graphics.IsFullScreen = false;
graphics.PreferredBackBufferHeight = 340;
graphics.PreferredBackBufferWidth = 480;

// if changing GraphicsDeviceManager properties outside 
// your game constructor also call:
// graphics.ApplyChanges();

I found out that you need to set the

GraphicDevice.PreferredBackBufferHeight = height;
GraphicDevice.PreferredBackBufferWidth = width;

When you do this in the constructor of the game class it works, but when you try do to this outside the constructor you also need to call

GraphicsDevice.ApplyChanges();

Furthermore to have fullscreen (which is not really working correctly while debugging) you can use

if (!GraphicsDevice.IsFullScreen)
   GraphicsDevice.ToggleFullScreen();
jabs

This solution works in XNA 3.0. Just put it in your game object's constructor:

// Resize the screen to 1024 x 768.
IntPtr ptr = this.Window.Handle;
System.Windows.Forms.Form form = (System.Windows.Forms.Form)System.Windows.Forms.Control.FromHandle(ptr);
form.Size = new System.Drawing.Size(1024, 768);

graphics.PreferredBackBufferWidth = 1024;
graphics.PreferredBackBufferHeight = 768;

graphics.ApplyChanges();
标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!