How do I swap left and right mouse buttons in .NET (preferably C#)? Basically the result should be the same as if the user checked the "Switch primary and secondary buttons" checkbox in the Mouse Properties through the control panel. I'm dealing with Windows XP, in case that makes a difference.
From stackoverflow
-
You can use a Windows API call to
SwapMouseButton:using System.Runtime.InteropServices; // ... [DllImport("user32.dll")] public static extern Int32 SwapMouseButton(Int32 bSwap); // ... // Swap it. SwapMouseButton(1); // Back to normal. SwapMouseButton(0);Eugene Katz : thanks. may want to add that you need "using System.Runtime.InteropServices;"John Feminella : Whoops; I did indeed neglect to mention that. I'll add it for future reference. -
Here's a code snippet that does this.
-
Something like this:
using Microsoft.Win32; var key = Registry.CurrentUser.CreateSubKey("Control Panel\\Mouse\\"); var newValue = key.GetValue("SwapMouseButtons"); if (newValue == null) newValue = "1"; else newValue = Int32.Parse(newValue) == 1 ? "0" : "1"; key.SetValue("SwapMouseButtons", newValue, RegistryValueKind.String);
0 comments:
Post a Comment