QLineEdit::text 使用 Android 虚拟键盘不完整

Posted

技术标签:

【中文标题】QLineEdit::text 使用 Android 虚拟键盘不完整【英文标题】:QLineEdit::text is incomplete with Android virtual keyboard 【发布时间】:2017-12-04 12:53:37 【问题描述】:

如果我使用 android 原生虚拟键盘,QLineEdit 无法获取所有输入的单词。 (Qt 5.7,Android 6)

如果我输入“强制输入”(如图所示)并调用

QLineEdit::text()

我只得到“Force”。

如何获取全文?

【问题讨论】:

【参考方案1】:

问题是“输入”仍在输入/输入(注意下划线)并且尚未提交给应用程序。您现在可以使用 QInputMethod::commit 强制提交所有内容:

将用户当前正在撰写的单词提交给编辑器。这 具有文本预测功能的输入法最需要该功能 脚本用于输入的功能和方法 字符与实际附加到的脚本不同 编辑。任何打断文本撰写的动作 需要通过调用 commit() 函数刷新作曲状态, 例如当光标移动到别处时。

之后,您应该能够使用QLineEdit::text 检索所有文本。

替代方案QLineEdit::displayText

正如here 所讨论的那样,可以使用QLineEdit::displayText 而无需先调用QInputMethod::commit

【讨论】:

QLineEdit::displayText 没有帮助,但这个决定帮助了我 QInputMethod *input = QApplication::inputMethod(); input->commit(); 谢谢!

以上是关于QLineEdit::text 使用 Android 虚拟键盘不完整的主要内容,如果未能解决你的问题,请参考以下文章

如何将 QLineEdit 文本传递给 MS Access DB?

PyQt5 检查项目是不是已经在 QListWidget

sh 在Androi设备上录制屏幕

androi 多线程

openfire怎么实现androi推送 还需要用到哪些东西

androi样式,全屏,去标题什么的