【问题标题】:qml virtual keyboard digits onlyqml 仅虚拟键盘数字
【发布时间】:2017-06-16 15:34:27
【问题描述】:

我正在查看带有Qt 5.9 安装的虚拟键盘的基本 QML 示例。仅接受数字的文本字段可以如下实例化:

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

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

【问题讨论】:

  • 错误使用您的代码:Cannot assign to non-existent property "onEnterKeyClicked" - 显示数字键盘的确切代码应该是什么?在我的情况下,它最初显示文字字符键盘,并且在文本输入中的任何按键上 - 开始显示数字。

标签: qt user-interface qml qtquick2 qtvirtualkeyboard


【解决方案1】:

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

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

validator: IntValidator {} // Allows any integer    

【讨论】:

  • 谢谢。完成了这项工作!
猜你喜欢
  • 1970-01-01
  • 2020-10-21
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2016-03-24
  • 2013-01-03
  • 2015-01-02
相关资源
最近更新 更多