Je veux que la fenêtre du jeu XNA soit en mode "fenêtré" mais "toujours au top", y a-t-il un moyen de le faire?rendre la fenêtre de jeu "toujours au top" dans XNA
Répondre
Merci pour votre réponse, le code de cette page Web ne compilerait pas pour moi, mais il m'a fait remarquer dans la bonne direction, c'est le code que je utilise (en utilisant XNA 3.1)
En premier lieu, dans les le même espace que la copie du jeu et collez ce code dans
class User32
{
[DllImport("user32.dll")]
public static extern void SetWindowPos(uint Hwnd, int Level, int X, int Y, int W, int H, uint Flags);
}
Je viens d'écrire au-dessus de ma classe principale « Game », puisque je ne l'utilise que dans mon classe de jeu.
Ensuite, dans le LoadContent() de la classe de jeu (DOIT être dans la méthode LoadContent(), ne fonctionne pas correctement nulle part ailleurs), écrire quelque part ... ce
User32.SetWindowPos((uint)this.Window.Handle, -1, 0, 0, graphics.PreferredBackBufferWidth, graphics.PreferredBackBufferHeight, 0);
note: « graphiques "est l'instance de GraphicsDeviceManager qui est premade pour vous chaque fois que vous démarrez votre projet.
Ceci peut également être utilisé pour positionner la fenêtre de jeu où vous voulez sur l'écran. Pour moi, je le voulais dans le coin supérieur gauche de l'écran.
http://www.pinvoke.net/default.aspx/user32/SetWindowPos.html
Inclure les valeurs de l'échantillon page dans une classe winapi et appeler cette fonction de votre classe de jeu:
WinApi.SetWindowPos(this.Window.Handle, HWND_TOPMOST, 0, 0, 0, 0, TOPMOST_FLAGS);
Cela devrait le faire.
La manière la plus simple est de configurer le périphérique graphique pour qu'il affiche en plein écran. Placez le code suivant dans votre principale méthode de jeu:
this.graphics.IsFullScreen = true;
Oui, je sais que je peux le faire, mais mon exigence est de garder la fenêtre en mode fenêtré et de le rendre le plus haut possible. Je suis déjà parti avec la réponse que j'ai fournie pour ma propre question, StackOverflow ne me laisse pas accepter ma propre réponse pour le moment. – Danny
J'aime solution plus Marcus sans substance taille :) – mnn
Nous avons en fait très proche de la même solution .. si vous avez réellement regardé le code de cette page, vous La différence est que ma classe User32 est beaucoup plus simple, utilise des variables primitives au lieu d'objets, et ne possède pas les méthodes de commodité inutiles. Cependant, la raison pour laquelle j'utilise ma solution est que j'ai eu des erreurs de compilation lors de la création de plusieurs variables const et static dans la classe User32. – Danny