我正在尝试找到一种方法来检测Windows 10是否处于平板电脑模式。请注意,这不是要查询用户是否有平板电脑 - 可以用GetSystemMetrics(SM_CONVERTIBLESLATEMODE)
解决。在我的情况下,上面的函数总是返回0 - Win10是否处于平板电脑模式。
没有结语的This线程似乎暗示没有可以检测平板电脑模式的WinAPI调用。我希望情况并非如此,因为操作系统发布了不同的WM消息,如果它是在平板电脑模式下。在平板电脑模式下WM_SHOWWINDOW isn't sent这意味着如果Windows 10处于平板电脑模式,我需要以不同的方式解决应用程序的启动问题。
我可以移动当前在其他地方接收WM_SHOWWINDOW
消息后触发的代码(在调用ShowWindow
之后),但随后我得到一个带有null参数的WM_DPICHANGED
消息。
你可以使用UIViewSettings.UserInteractionMode @Raymond指出。
参考“Tablet mode”“How can I detect whether my PC is in tablet mode?”