如何强制键盘布局在QML中显示“下一步”按钮? (与标准HTML格式一样) 我不想显示“确定”按钮(这意味着您即将验证表单..)
答案 0 :(得分:4)
您可以使用Qt 5.6中引入的EnterKey
attached property:
import QtQuick 2.6
TextInput {
EnterKey.type: Qt.EnterKeyNext
}
答案 1 :(得分:1)
TextInput {
id: txtInput
Component.onCompleted: {
EnterKeyAction.actionId = EnterKeyAction.Next
EnterKeyAction.label = "Next"
}
}
答案 2 :(得分:0)
我假设您没有使用Qt虚拟键盘。因此,您可以通过附加的EnterKey.type
属性设置操作按钮的类型(可用的类型为Go,Search,Send,Next,...)。
另外,您还需要处理 返回 按钮按下的信号以执行所需的操作。例如,发送数据。在您的情况下,您只需要将焦点切换到下一个控件即可。
import QtQuick 2.12
import QtQuick.Controls 1.12
Column {
TextField {
id: field1
KeyNavigation.tab: field2
activeFocusOnTab: true
Keys.onReturnPressed: KeyNavigation.tab.forceActiveFocus();
}
TextField {
id: field2
KeyNavigation.tab: field3
activeFocusOnTab: true
Keys.onReturnPressed: KeyNavigation.tab.forceActiveFocus();
}
TextField {
id: field3
KeyNavigation.tab: field1
activeFocusOnTab: true
Keys.onReturnPressed: KeyNavigation.tab.forceActiveFocus();
}
}
我处理了returnPressed
信号以切换焦点。另外,我还可以使用TAB
键在桌面平台上进行切换。