如何检测Windows 10是否处于平板电脑模式

时间:2019-03-18 16:18:39

标签: winapi windows-10 tablet-pc

我正在尝试找到一种方法来检测Windows 10是否处于平板电脑模式。请注意,这与查询用户是否有Tablet PC无关,可以通过GetSystemMetrics(SM_CONVERTIBLESLATEMODE)解决。就我而言,以上函数始终返回0-Win10是否处于平板电脑模式。

没有结束语的

This线程似乎表明没有WinAPI调用可以检测Tablet模式。我希望不是这样,因为无论操作系统是否处于平板电脑模式,操作系统都会发布不同的WM消息。在平板电脑模式WM_SHOWWINDOW isn't sent中,这意味着如果Windows 10处于平板电脑模式,我需要以不同的方式处理应用程序的启动。

我可以将收到WM_SHOWWINDOW消息后当前触发的代码移动到其他地方(恰好在调用ShowWindow之后),但是随后我得到一条带有空参数的WM_DPICHANGED消息

1 个答案:

答案 0 :(得分:2)

您可以使用UIViewSettings.UserInteractionMode @Raymond指出。

请参阅“ Tablet mode”“ How can I detect whether my PC is in tablet mode?