【问题标题】:Automatically initiating the keyboard in Windows Tablet when tap on the text field点击文本字段时自动启动 Windows 平板电脑中的键盘
【发布时间】:2016-03-10 08:08:48
【问题描述】:

我使用 Winforms 开发了一个桌面应用程序。当我在 Windows 8.1 平板电脑 上安装应用程序时,应用程序运行良好,但我面临的唯一问题是当我点击文本字段时键盘不会自动出现。相反,我必须点击或单击任务栏右侧的触控键盘图标才能实现。

有什么方法可以让它工作吗?因为它不利于用户体验。

【问题讨论】:

    标签: .net windows winforms windows-8.1 tablet


    【解决方案1】:

    你可以在这里找到答案:

    How to make Windows 8 tablet open the on-screen-keyboard when an input field gets focus?

    还有很多关于这个主题的其他线程。

    根据我个人的经验:

    private void OpenOnScreenKeyboard()
    {   
        Process.Start(@"C:\Program Files\Common Files\Microsoft Shared\ink\TabTip.exe");
    }
    
    private void CloseOnScreenKeyboard()
    {   
        foreach (var process in Process.GetProcessesByName("TabTip"))
        {
            process.Kill(); // Kill any previous processes running
        }
    }
    

    您可能只需要上述OpenPenInput() 方法的最后一行。我还编辑了注册表,以便在打开键盘时显示手写面板。但该部分仅适用于 Windows 8.1 及更低版本。我还没有尝试让它在 Win10 中工作。 OpenPenInput() 的最后一行应该是你所需要的。

    【讨论】:

    • @psyLogic - 我已将用于实现此功能的代码包含在我的 WinForms 应用程序中。
    • 您的答案中有一些多余的代码行,您可能需要编辑答案。我已接受答案,但请进行必要的更改。
    • @psyLogic - 这个答案不再适合你吗?只是好奇你为什么不接受这个答案。
    • 我告诉你编辑代码但你没有,你的代码打开了笔输入。我的问题是关于打开键盘。既然我引起了您的注意,请进行必要的更改,因为您的回答可能会误导其他读者,或者请允许我这样做。我们在这里为您提供帮助:)
    • 当然它不会伤害任何人(好吧它没有伤害我)但是这里的一些访问者很天真,所以我们应该确保我们的帖子不会混淆任何人。话虽如此您的帖子确实对我有所帮助,我非常感谢您的努力并对此表示感谢。+1 :)
    猜你喜欢
    • 1970-01-01
    • 2018-09-18
    • 2016-09-03
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-06-11
    • 2019-07-14
    • 1970-01-01
    相关资源
    最近更新 更多