我写了一个小应用程序来改变我的鼠标设置。
问题是当我更改注册表时它们不适用,而是在我注销,登录或重启后应用它们。
原型代码:
QSettings settings("HKEY_CURRENT_USER\\Control Panel\\Mouse", QSettings::NativeFormat);
QVariant value("10");
settings.setValue("MouseSensitivity", value);
如何让更改立即生效?
答案 0 :(得分:3)
如果您需要立即采取行动,则需要使用
带有SystemParametersInfo
参数的SPI_SETMOUSESPEED
API:
int mouseParams[3];
mouseParams[2] = NewmouseAccel;
SystemParametersInfo(SPI_SETMOUSE, 0, mouseParams, SPIF_SENDCHANGE);
此外,它更专业,而不是使用注册表技巧。