gpt4 book ai didi

c++ - Win32 中是否有检测用户何时更改区域设置的消息或通知?

转载 作者:塔克拉玛干 更新时间:2023-11-03 00:20:16 24 4
gpt4 key购买 nike

编辑:

为了响应社区的评论,问题被减少和优化。问题的删除部分将作为单独的问题发布。

问题:

Win32 API 中是否有任何 WM_SOMETHINGNM_SOMETHING 消息可以通知我有关用户更改 locale

你看,我可以使用该消息/通知将我程序的locale更改为当前locale .

像这样的伪代码:

case WM_SOMETHING: // in my main window procedure
_wsetlocale( LC_ALL, L"" );

此外,如果有这样的消息,并且我按照上面的伪代码处理它,它会调整仅主窗口的 locale还是还为子对话框和控件设置 locale?。

我为解决这个问题所做的努力:

通过互联网浏览后,我唯一找到的是WM_INPUTLANGCHANGE。 , WM_SETTINGCHANGEWM_INPUTLANGCHANGEREQUEST消息,但我从未使用过它们,不知道它们是否能解决我的问题。

谢谢。

最好的问候。

最佳答案

Windows 发送 WM_SETTINGCHANGE消息,wParam 设置为 0lParam 设置为包含值 intl 的字符串。这在 WM_SETTINGCHANGE 的文档中的 Parameters 部分进行了描述:

wParam...

When the system sends this message as a result of a change in locale settings, this parameter is zero.

lParam...

When the system sends this message as a result of a change in locale settings, this parameter points to the string "intl".

您的应用程序需要响应消息并自行在子对话框和控件中进行任何必要的更改。

关于c++ - Win32 中是否有检测用户何时更改区域设置的消息或通知?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21504075/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com