【问题标题】:Electron App: Turn off On-Screen Keyboard Windows 10 TabletElectron App:关闭屏幕键盘 Windows 10 平板电脑
【发布时间】:2016-07-18 16:39:04
【问题描述】:

我编写了一个电子应用程序并实现了我自己的输入小部件,以用于我的应用程序 - 针对移动触摸输入进行了优化。 总的来说,这是否是一个好主意不应该是本次讨论的一部分。

我现在的问题是,当我在 Windows 10 平板电脑上安装我的应用程序时,只要我关注输入字段,操作系统就会打开屏幕键盘。

当然,屏幕键盘可以在 Windows 本身中关闭 - 不幸的是,它似乎没有按预期工作...... 如果我关闭键盘,它将不再显示在任何地方 - Windows 资源管理器、浏览器 - 无处。它按预期工作。 但是即使我停止了相应的 windows 服务,电子应用程序仍然会打开它。

所以我的结论是电子本身打开键盘并忽略系统告诉它的任何内容。不过,我没有找到任何文档或 API 来关闭此功能。

有谁知道我可以如何实现我的目标?

提前谢谢你,

帕特里克

【问题讨论】:

  • 用户如何在没有键盘的情况下输入输入字段?
  • 如前所述,我已经实现了自己的输入小部件。其中一部分是自定义屏幕键盘。重要的是用户必须使用这个小部件,并且没有其他(例如来自操作系统的那个)有这样做的原因,但解释它们将超出此线程的目的。
  • 在那种情况下,为什么还要使用输入字段呢?为什么不只拥有一个只读文本框并使用这些小部件来更新该文本框中的文本?您可以做的另一件事是禁用整个应用程序的所有触摸事件。如果你愿意,我可以提供如何做到这一点的答案。您还可以在这个输入框和preventDefault() 上收听触摸事件,这样它们就不会冒泡
  • 嘿@justin.m.chase - 谢谢你的回答。我使用本机输入字段有几个原因,但同样,解释我的所有推理太复杂了。我使用 angularjs 作为框架和扩展的输入字段,以便在它们上使用大量预先实现的功能。不幸的是,我无法禁用任何事件或任何东西,因为该应用程序必须在不同的设备上运行并以相同的方式运行。唯一的选择是阻止操作系统做它不应该做的事情——即弹出已关闭的键盘
  • 那我觉得你得把不想获得焦点的UI元素遮起来,然后自己处理触摸事件。

标签: javascript mobile windows-10 tablet electron


【解决方案1】:

不幸的是,我现在自己发现,目前这是不可能的。 在调查了一些电子和铬源代码后,我设法找到了打开键盘的位置,这恰好是在文本字段的铬实现中。 为了在电子中支持这样的功能,首先必须有一个铬选项来完全禁用屏幕键盘,不幸的是,目前还没有。 如果实现该功能,电子可以自行实现此选项并将其传递给铬。 我已经在 github 上开始讨论它,希望有足够多的人支持这个问题,并且 chromium 会相应地扩展它的代码。

对于那些迫切需要解决方法的人: 检查源代码后我唯一能想到的就是在我的输入字段上放置一个“只读”,因为铬不会在只读字段上打开键盘。 当然,缺点是您将无法再在这些字段中使用键盘,此外,闪烁的光标也不会出现,因此使用它感觉很奇怪。

【讨论】:

  • 您好!我似乎找不到任何关于此的其他信息,多年后我觉得诚实很奇怪。您是否有机会找到电子的另一种解决方案或解决方法?我的用例是我有一个二维码阅读器,我想将内容“粘贴”到隐藏的输入中,但不显示键盘。我在 Windows 10 上运行(尚未尝试从 Windows 设置中禁用虚拟键盘...)
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2013-08-02
  • 2013-02-14
  • 2020-03-03
  • 1970-01-01
  • 2016-12-23
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多