One of the annoying things with XNA, happens when handling mouse clicks. If you’ve ever worked on an XNA windows game (note: this only really applies to a windows game) in windowed mode and tried switching applications, you may have noticed that XNA still captures the clicks even when the window is not active! It also reports the mouse position when it’s outside of the window which can cause more issues in and of itself. Unfortunately, the fix for the first problem doesn’t work if you’re using multiple forms in the same application.
So, we have three issues:
- XNA captures clicks while the game is not active (i.e. from other applications)
- and it reports the mouse position when it’s outside of the viewable area
- and the fix for the first item above doesn’t work when you have multiple forms in your application.
Fortunately, there’s an easy way to resolve these! “Great!”, you say, “now how do I do it?”. Click on, my friend.