Окно приложения и проблема диалога в QML
Я не могу нажать на VirtualKeyboard
если TextField
в диалоге и Application Window
это базовый класс.
Ниже приведен код:
import QtQuick 2.6
import QtQuick.Window 2.2
import QtQuick.Controls 2.2
import QtQuick.VirtualKeyboard 2.2
ApplicationWindow {
id:appwindow
visible: true
width: 600
height: 500
title: qsTr("Test")
Button{
id:button
text:qsTr("Open")
onClicked:{
dialog.visible=true
dialog.open()
}
}
Dialog{
id:dialog
width:200
height:300
visible:false
TextField {
id: textfield
color: "#2B2C2E"
}
}
InputPanel {
id: inputPanel
z: 89
anchors.bottom:parent.bottom
anchors.left: parent.left
anchors.right: parent.right
visible: Qt.inputMethod.visible
}
}
Не будет проблем, если я изменю ApplicationWindow на Window, это ошибка QT в v5.9.1?
1 ответ
ApplicationWindow
предлагает хороший дополнительный слой overlay
на который вы можете переписывать все, что должно быть выше остального контента - просто подходящее место для вашего VirtualKeyboard
InputPanel {
id: inputPanel
parent: ApplicationWindow.overlay // <-- This will do the trick
anchors.bottom:parent.bottom
anchors.left: parent.left
anchors.right: parent.right
visible: Qt.inputMethod.visible
}