问题标签 [on-screen-keyboard]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
785 浏览

wpf - 为 Kiosk 寻找可本地化的 WPF 键盘控件

我正在开发一个在 XPe 盒子上使用 WPF 的项目,该盒子将被部署为信息亭应用程序(仅限触摸屏,无键盘/鼠标),我们需要屏幕键盘。我们不能使用内置的 XP 按钮,因为按钮太小无法触摸,而且无法设置样式。

我们实际上不需要成为一个“真正的”键盘(发送扫描码,总是在顶部等),因为输入的值将被放入自定义对话框中的单个文本框中,我们不想让它们 alt -f4 退出应用程序等。

我发现很多控件支持纯英文键盘甚至构建自定义布局,但我缺少一个通用控件,它将基于 InputManager CultureInfo 更改布局/字符集。它需要支持所有的操作系​​统语言(最好是开箱即用,而不必为我们支持的每种语言构建自定义布局),这似乎是目前最大的症结所在。

有没有人有他们用来完成类似事情的控制?我发现的几乎所有东西都不支持开箱即用的各种布局和字符集,或者它是一些糟糕的 90 年代早期 C++ 组件,根本无法设置样式。谢谢

0 投票
1 回答
409 浏览

ipad - ipad屏幕键盘起源

我想知道 ipad 上屏幕键盘的确切来源是什么。它是否会根据我们使用的语言而动态变化?

我尝试获取此值以在我的应用程序中为 UITextview 创建一个框架。

如果我使用无线外接键盘或坞站外接键盘,是否存在来源或行为差异?

这是我使用外接键盘时的应用截图:

在此处输入图像描述

这是我使用屏幕键盘的时候:

在此处输入图像描述

0 投票
1 回答
5086 浏览

c# - 我如何以编程方式操作 Windows 7 屏幕键盘 osk:移动、调整大小、删除标题栏/标题

我正在开发一个 WPF 应用程序,我想以“始终存在”的方式显示内置的 Windows 7 屏幕键盘。所以我想:

  1. 将其移动到特定位置

  2. 将其设置为一定的宽度和高度

  3. 删除标题/标题栏,以便用户无法移动或关闭它

  4. 删除该功能以调整其大小(或任何其他用户调整)。

我已经尝试了所有典型的 API 函数(MoveWindow、SetWindowPos、SetWindowLong 等),但它拒绝做任何事情。代码目前适用于所有其他进程和应用程序(例如 Internet Explorer 和命令提示符);就好像 api 调用不适用于 osk,或者它被“锁定”了。我错过了什么?提前致谢。

0 投票
1 回答
2661 浏览

wpf - 如果用户将焦点设置在文本字段上,则显示屏幕键盘。带有 .Net 4 客户端配置文件的 WPF

对于我的全屏 WPF 应用程序,如果用户将焦点设置在文本字段上,我需要显示 Windows 7 屏幕键盘。

面板没有硬键盘,只有一个与之交互的鼠标设备。在这种情况下,我需要一个屏幕键盘来填充文本字段。

WPF 应用程序是在 .Net Framework 4.0 客户端配置文件上用 C# .Net 编写的。

感谢回复安迪

0 投票
2 回答
7062 浏览

android - Android:屏幕键盘出现和消失时,有没有自动调用的监听器?

我想知道当屏幕键盘显示和消失时是否有任何方法可以由android自动通知。

例如,当我们单击编辑文本时,会出现 ime。会有任何事件调用吗?当我们按下它时它消失了,同样会有任何偶数调用吗?

我发现了这个线程Android: 屏幕键盘出现时触发哪个事件?,但是还没有找到答案。

目的是因为我需要一个事件来自动操纵可见性。我在屏幕顶部有一个带有edittext的活动,在它下方,一个列表视图和一个线性布局,它们位于彼此之上。为了控制用户看到的内容,我操纵了可见性。默认情况下,最初显示线性布局,但是,当用户输入文本时,应该显示列表视图。当用户完成输入时,列表视图应该消失,在这种情况下,屏幕键盘将被关闭。

我尝试使用 onFocusChange 完成可见性的更改,但是,即使屏幕键盘消失,edittext 仍然保持焦点并且线性布局永远不会重新出现。

下面是我对 onFocusChange 的实现

如果有人对此有任何想法,请告诉我。:D

0 投票
2 回答
96 浏览

iphone - 显示 UIViewController 时,如何使用键盘编辑字段?

我想在视图控制器被推送以开始编辑特定的 UITextField 之后显示键盘。

我相信我应该手动触发 ViewDidAppear 上的事件。

执行此类任务的正确方法是什么?

0 投票
3 回答
11936 浏览

android - 如何运行那些 Android SDK 示例应用程序?

我有 64 位 Windows 7 Professional、Android SDK 和 Eclipse 的 ADT 插件。在 Android SDK 的示例目录中,至少有三个不同的软键盘目录。我应该使用哪一个?

如何运行那个软键盘?我试过了,但它根本没有用。

您也可以从这里找到它:http: //developer.android.com/resources/samples/SoftKeyboard/index.html

0 投票
1 回答
4577 浏览

wpf - 如何在 TextBox 获得焦点时打开 Windows OSK,而不是要求用户点击键盘图标?

我们正在开发一个将与触摸屏一起使用的 .NET 4 中的 WPF 应用程序。我们正在尝试使用内置的 Windows OSK 进行输入,剩下的最后一个问题是让键盘在文本框获得焦点后立即打开。目前,如果文本框获得焦点,则会出现一个小键盘图标(这是 InputPanel 图标),用户必须点击该图标才能打开键盘。

有没有办法跳过图标步骤,让键盘一直打开焦点?最好是可以在一个地方设置或编码并应用于全局所有文本框的东西?它还需要使用应用程序线程的当前区域性设置(它似乎已经这样做了)。

我无法在控制面板设置中找到任何可以让您跳过图标步骤的内容。我还在网上找到了一些使用TextInputPanel.CurrentInPlaceState的示例,但是当我实现代码以在主窗口的预览焦点上打开 TextInputPanel 时,我不断收到 COM INTEROP 异常并且基本上陷入了死胡同(Microsoft.Ink.dll是一个互操作 DLL)。

是否有一个注册表项可以将默认的 CurrentInPlaceState 更改为 Expanded 而不是 HoverTarget?我一直无法在我的网络搜索中找到一个。

谢谢,

瓦莱丽

编辑:这是我放在主窗口代码后面的一些代码,以及我不断收到的异常消息 - 我不知道它是什么意思或如何修复它(我的网络搜索失败了!)

这是异常消息,它发生在我的代码调用 TextInputPanel 构造函数时:

由于以下错误,检索具有 CLSID {F9B189D7-228B-4F2B-8650-B97F59E02C8C} 的组件的 COM 类工厂失败:80040154 未注册类(HRESULT 异常:0x80040154 (REGDB_E_CLASSNOTREG))

我验证了 WPF 应用程序的平台目标是 x86。我运行了 Dependency Walker,它说我使用的 Microsoft.Ink.dll 是 64 位的,并且缺少两个延迟加载的依赖项(GPSVC.dll 和 IESHIMS.dll)。我找到了 Microsoft.Ink.dll 的 32 位版本,但我仍然遇到同样的错误,并且 Dependency Walker 也在说同样的事情 - GPSVC.dll 和 IESHIMS.dll 丢失。

我不能以 x64 为目标,而且我不想将丢失的 DLL 放入我的应用程序文件夹中(如果这样可行?)。我希望我缺少一些简单的东西,因为摆脱键盘提示很麻烦......

非常感谢任何帮助 - 在使用非托管/互操作程序集时,我有点新手......

0 投票
1 回答
1326 浏览

windows - 从代码控制屏幕键盘位置上的 Windows 7

我的经理认为他看到其他人将屏幕键盘上的窗口“锁定”到他们的应用程序底部,有效地将其与他们的窗口对接,并希望我重现这一点。他们使用vb6,偶尔使用vb.net。

我已经在这个主题上进行了大量的谷歌搜索,我正在求助于查看 Windows SDK,但是如果有人可以通过确认这是不可能的或指向我来为我节省几天的痛苦如果是正确的方向,我将不胜感激。

0 投票
3 回答
1974 浏览

java - 使用 32 位 JRE 打开 64 位 Windows 的虚拟键盘

我需要从我的应用程序中打开 Windows 的虚拟键盘,它将使用 Eclipse RCP 在 windows 32 位平台(即 win32 JRE)上进行部署。

按照帖子的答案在 Java 程序中打开 Windows 虚拟键盘,应用程序在 32 位 Windows 操作系统上正确运行,但拒绝在 64 位 Windows 操作系统上运行。

我正在使用的解决方案如下:

有没有办法在不使用 64 位部署的情况下解决这个问题?(我无法创建,只要我使用不支持此环境的库)。

谢谢