Xna - получить расположение окна? - PullRequest
1 голос
/ 24 августа 2010

Я пытаюсь настроить систему XNA WinForms, чтобы у меня был редактор игр, и мне нужно использовать мышь для него. Поскольку входной класс XNA Mouse сообщает о положении мыши в зависимости от местоположения окна, мне нужно поместить имеющуюся форму в то же место. Как я могу получить местоположение окна, которое использует моя игра XNA?

Ответы [ 3 ]

4 голосов
/ 24 августа 2010

В итоге я сделал это с помощью этого кода:

        Form gameWindowForm = (Form)Form.FromHandle(this.Window.Handle);
        ...
        myForm.Location = new System.Drawing.Point(gameWindowForm.Location.X - 5,gameWindowForm.Location.Y - 5); //-5 pixels for adjustment

, который работает просто отлично!

1 голос
/ 24 августа 2010

Свойства X и Y структуры Game.Window.ClientBounds должны дать вам абсолютные координаты окна, которые вы ищете.

0 голосов
/ 17 декабря 2011

Я тоже столкнулся с этой проблемой в редакторе уровней.У меня есть окно с картинками в Windows Forms, поэтому единственное, что мне было нужно при инициализации игры XNA:

Mouse.WindowHandle = this.windowForm.Viewport.Handle;

, где Viewport - это поле рисунка

, теперь позиция мыши XNAнастроен правильно автоматически.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...