我正在尝试让我的应用程序检测Windows主题何时更改,然后才能响应该更改。
要检测主题何时发生变化,我会收到一条方便的WM_THEMECHANGED
消息。
我想要的是还能够确定颜色设置何时从此处变化:
我一直在搜索并寻找任何可能的方法来检测该对话框所做的更改,但我还没有找到任何相关信息。
所以我想知道是否可以从“窗口颜色”和“外观”对话框中检测更改。我理解这里的更改与主题更改不同,但我希望能够检测并响应这些更改。
答案 0 :(得分:1)
更改这些设置后,WM_SETTINGCHANGED
将广播到wParam
值为SPI_SETNONCLIENTMETRICS
或WM_SYSCOLORCHANGE
的顶级窗口,具体取决于更改的设置。
答案 1 :(得分:1)
WM_SYSCOLORCHANGE
消息似乎响应对系统颜色所做的更改,其中还包括从“窗口颜色”和“外观”对话框所做的更改。