如何在C ++中以编程方式配置鼠标增强指针精度? 我知道有一些有用的命令,如SystemParametersInfo,速度,......
int x = 15;
SystemParametersInfo(SPI_SETMOUSESPEED,NULL,reinterpret_cast(x),SPIF_UPDATEINIFILE | SPIF_SENDWININICHANGE);
...但我找不到提高精度----
答案 0 :(得分:7)
根据SystemParametersInfo
功能和SPI_SETMOUSE
的{{3}}:
设置两个鼠标阈值和鼠标加速度。
pvParam
参数必须指向包含三个整数的数组,以指定这些值。有关详细信息,请参阅the documentation。
因此,您需要一个包含3个值的数组,并在调用pvParam
时指定该数组的指针作为SystemParametersInfo
参数。
由于您所关心的只是改变加速度(最后一个值),您可能希望保留前两个鼠标阈值的当前值。通过使用SystemParametersInfo
标志调用SPI_GETMOUSE
来获取这些值,然后修改最后一个(加速),然后再次调用SystemParametersInfo
,这次使用{{1} } flag。
示例代码(没有建议的错误检查):
SPI_SETMOUSE
你可能已经知道了这一点,但是有太多表现不好的应用程序,我不提及它以防万一。 如果您在自己的应用程序中执行此操作,请务必保存原始值,以便在应用程序关闭时可以将其恢复!这是您在修改系统范围设置时的基本礼仪
答案 1 :(得分:1)
'增强指针精度'是一个开/关加速选项。
SystemParametersInfo的SPI_SETMOUSE
参数将调整此设置。
我无法确切地告诉您加速度值如何受到影响,但如果您SPI_GETMOUSE
并显示设置为开启和关闭的值,您就会找到它。
答案 2 :(得分:1)
This discussion有更多信息。它有一个宏似乎正在寻找你正在寻找的东西。转换为C ++应该非常简单;它只是几个DLL调用。