2012-03-03 19 views
12

Zajmuję się tworzeniem gry połączonej z winformami (dla edytora map). Problem, z którym się borykam, polega na tym, że nawet jeśli główne okno gry nie jest w centrum uwagi, nadal otrzymuje zdarzenia dotyczące zmiany myszy (takie jak kliknięcie i poruszenie myszą).Upewnij się, że moja gra XNA jest aktywna przed obsługą zdarzeń myszy i klawiatury.

Czy istnieje sposób, aby upewnić się, że moja aplikacja znajduje się w centrum zainteresowania, zanim przejdzie dalej do obsługi tych zdarzeń Czy istnieje jakiś rodzaj wbudowanej metody?

Dzięki!

Odpowiedz

18

użyć właściwości Game.IsActive aby sprawdzić, czy należy radzić sobie z myszki i klawiatury.

2

Jeśli dodać odwołanie do System.Windows.Forms można sprawdzić, czy okno jest aktywne XNA tak:

if (System.Windows.Forms.Form.ActiveForm == 
    (System.Windows.Forms.Control.FromHandle(Window.Handle) as System.Windows.Forms.Form)) 
{ 
    // Active form is the XNA window. 
} 
Powiązane problemy