【发布时间】:2019-03-18 16:18:39
【问题描述】:
我正在尝试寻找一种方法来检测 Windows 10 是否处于平板电脑模式。请注意,这不是查询用户是否有平板电脑——这可以通过GetSystemMetrics(SM_CONVERTIBLESLATEMODE) 解决。在我的例子中,上面的函数总是返回 0——无论 Win10 是否处于平板模式。
This 没有结尾的线程似乎表明没有可以检测平板电脑模式的 WinAPI 调用。我希望不是这样,因为无论是否处于平板电脑模式,操作系统都会发布不同的 WM 消息。在平板电脑模式WM_SHOWWINDOW isn't sent 这意味着如果 Windows 10 处于平板电脑模式,我需要以不同的方式解决应用程序的启动问题。
我可以在其他地方收到WM_SHOWWINDOW 消息后(就在调用ShowWindow 之后)移动当前触发的代码,但随后我得到一个带有空参数的WM_DPICHANGED 消息。
【问题讨论】:
-
能否通过 SM_TABLETPC 帮助 GetSystemMetrics() (docs.microsoft.com/en-us/windows/desktop/api/winuser/…)?
标签: winapi windows-10 tablet-pc