Linux/GTK 中的虚拟键盘

Posted

技术标签:

【中文标题】Linux/GTK 中的虚拟键盘【英文标题】:Virtual Keyboard in Linux/GTK 【发布时间】:2012-10-08 13:37:29 【问题描述】:

我有一个简单的界面(可以是触摸式的,也可以通过鼠标点击操作)。当我选择一个文本框时,应该会弹出一个虚拟键盘。我做了一点挖掘,xvkbd 看起来不错。 X11 是唯一的依赖,这很好!但是,我不想在系统中安装键盘并将其称为发出命令或设置环境变量。我希望键盘成为我制作的应用程序的一部分,它应该在我运行应用程序并选择文本框时弹出,在其他情况下都不会。据我所知,从头开始编写虚拟键盘并不是最简单的任务。如果有什么东西可以在我的 C++ 应用程序中使用,那就太好了。请指教。

【问题讨论】:

【参考方案1】:

检查 matchbox-keyboard,它应该可以满足您对 gtk 的需求。

取自其README

嵌入

您可以使用支持 XEMBED 协议(例如 GTK2)的工具包将 matchbox-keyboard 嵌入到其他应用程序中。

查看示例/matchbox-keyboard-gtk-embed.c 了解其完成方式。

【讨论】:

感谢您的好评!但是,这个键盘似乎有很多复杂性。我在上面发布了一个问题here,希望我能尽快得到答案!【参考方案2】:

如果您可以访问 Qt,您可以使用 QX11EmbedContainer。如果没有,您可以自己嵌入 xvkbd 的窗口(参见here 方法)。

【讨论】:

以上是关于Linux/GTK 中的虚拟键盘的主要内容,如果未能解决你的问题,请参考以下文章

JS中的虚拟键盘,但带有图像

android中的虚拟键盘问题

为输入字段设置值不会影响 Safari 中的虚拟键盘

无法关闭虚拟键盘

避免虚拟键盘弹出

jquery 虚拟键盘 - Chrome 和 Edge 中的光标不闪烁