qt - 在 Qt Quick Controls 中隐藏 TextArea 时无法摆脱光标
问题描述
这个问题似乎微不足道,我几乎相信这是 Qt 本身的一个错误:
import QtQuick.Window 2.2
import QtQuick 2.2
import QtQuick.Controls 1.2
import QtQuick.Controls.Styles 1.2
import QtQuick.Layouts 1.1
Window {
id: window
visible: true
width: 640
height: 480
title: qsTr("Hello World")
Rectangle {
color: "white"
Layout.columnSpan: 2
Layout.fillHeight: true
Layout.fillWidth: true
radius: 5
width: 640/2
height: 480/2
TextArea {
id: txtMemo
anchors.fill: parent
anchors.margins: 5
textColor: "black"
wrapMode: TextEdit.Wrap
readOnly: false
}
}
Button {
x: 0
y: 480/2
width: 640/2
height: 480/2
onClicked: {
//Qt.inputMethod.hide()
txtMemo.visible = false
}
}
}
您需要在 Android 设备上运行它才能看到错误:
在文本区域中输入内容,以显示光标和虚拟键盘。
单击按钮时,光标和键盘将停留在屏幕上。不知道为什么,也许是一个功能。
无论如何,这不是主要问题。当我取消注释Qt.inputMethod.hide()
并尝试复制时,会发生一件有趣的事情:
(为画质道歉)
那么如何摆脱光标呢?在 Android 上的 Qt 5.9.6 上测试(似乎与 Android 版本无关,也发生在最新版本上)。
解决方案
推荐阅读
- vba - Outlook 2016 - 按接收日期/发送日期对受限项目进行排序并选择最新的电子邮件
- sql - 如何在 TimescaleDB 中的每 n 分钟时间范围内获得较大的两个值
- javascript - 页码问题
- python-3.x - 更新ododo10中的所有模块时出现关键错误
- go - go中的[""]是什么意思
- javascript - 在 Lerna monorepo 中使用助手
- list - 在 Flutter/Dart 中对具有相同属性(时间戳)的不同对象列表进行排序
- amazon-web-services - AWS Ubuntu 18.04 AMI 软件包安装失败
- node.js - 无法读取未定义的属性“menu_id”
- python - 在 paho-mqtt 中订阅和发布多个主题的最佳方式是什么?