有一个个人的需求,针对windows系统进行属性设置,这里以对鼠标的左右键主键进行切换为例,进行了研究,以当前win11系统为基础进行了更动。
首先是对于如果打开windows系统下的鼠标设置,有以下几种办法:
添加图片注释,不超过 140 字(可选)
点击win键后输入鼠标设置,点击主鼠标按钮即可切换鼠标的左右键。
添加图片注释,不超过 140 字(可选)
第二种办法就是通过打开控制面板之后,打开鼠标选项,通过对鼠标选项中的切换主要和次要的按钮,即可切换鼠标的左右键。
添加图片注释,不超过 140 字(可选)
添加图片注释,不超过 140 字(可选)
第三种办法就是使用win+R,跳出运行窗口之后,输入control /name Microsoft.Mouse,即可打开鼠标控制界面,同样是鼠标选项中的切换主要和次要的按钮,可切换鼠标的左右键。
添加图片注释,不超过 140 字(可选)
以上就是针对如何在windows系统中找到鼠标的设置界面来改变鼠标左右键。但是这并不是想要的结果,主要是想要通过程序去自动控制windows的设置,运行程序就可以一键改变左右键,这里主要是通过使用python的win32gui和win32con来进行windows的窗口控制。
使用的方法是以上的第三种方法,首先是通过打开运行之后输入打开鼠标属性页面
subprocess.run('control /name Microsoft.Mouse', shell=True)
这里使用的是subprocess库来模拟运行,输入命令即可跳转。
window_name = u'鼠标 属性'
time.sleep(0.3)
hwnd = win32gui.FindWindow(None, window_name)
然后通过如下属性进行查找,通过窗口的名字找到窗口的句柄,然后再通过对该句柄进行循环查找,找到切换主要和次要的按钮,还有确定按钮的句柄,然后对该两个进行模拟点击。
添加图片注释,不超过 140 字(可选)
win32gui.EnumChildWindows(hwnd,lambda hwnd,param:param.append(hwnd),button)
print(win32gui.GetWindowText(button[2]))
changeButtonhwnd = button[2]
# print(win32gui.GetWindowText(button[2]))
win32gui.PostMessage(changeButtonhwnd, win32con.WM_LBUTTONDOWN, win32con.MK_LBUTTON)
time.sleep(0.05)
# 模拟鼠标弹起
win32api.PostMessage(changeButtonhwnd, win32con.WM_LBUTTONUP, win32con.MK_LBUTTON)
time.sleep(0.05)