仅限qml虚拟键盘数字

时间:2017-06-16 15:34:27

标签: qt user-interface qml qtquick2 qtvirtualkeyboard

我正在查看安装Qt 5.9的虚拟键盘的基本QML示例。只需要数字的文本字段可以实例化如下:

TextField {
    id: digitsField
    width: parent.width
    previewText: "Digits only field"
    inputMethodHints: Qt.ImhDigitsOnly
    enterKeyAction: EnterKeyAction.Next
    onEnterKeyClicked: textArea.focus = true
}

问题是我还可以通过虚拟键盘输入空格和句点.(我不确定确切的字符是否取决于语言环境)。我不确定为什么这些是允许的,因为它们不是数字。是否可以实际只有数字?

1 个答案:

答案 0 :(得分:2)

您可以使用inputMaskvalidator获得更细粒度的控件,如下所示:

inputMask: "000000" // Allows up to 6 digits, i.e. 1 digit for each 0

validator: IntValidator {} // Allows any integer