如何只允许在qml中的textField中输入某些数字
how to allow only certain numbers to be entered inside textField in qml
我有一个 TextField,如代码所示,我必须确保用户只输入 100-5000 之间的数字。
TextField{
id:custom_entry
objectName: "custom_entry"
width: 200
placeholderText: "Enter 100ms - 5000ms"
validator: IntValidator {bottom: 100; top: 5000;}
}
我已经尝试使用验证器,我可以输入任何 4 位数字,甚至是 9999,我如何在 QML 中限制它。
您可以像这样使用 RegularExpressionValidator :
TextField{
validator: RegularExpressionValidator{
regularExpression: /^[1-9][0-9]{2}|[1-4][0-9]{3}|5000/
}
}
只要用户可以输入 999 这样的数字,那么 TextField
也将允许输入 99 这样的数字。您始终可以检查 TextField
的只读 属性 acceptableInput
以确保输入的值在范围内。
我有一个 TextField,如代码所示,我必须确保用户只输入 100-5000 之间的数字。
TextField{
id:custom_entry
objectName: "custom_entry"
width: 200
placeholderText: "Enter 100ms - 5000ms"
validator: IntValidator {bottom: 100; top: 5000;}
}
我已经尝试使用验证器,我可以输入任何 4 位数字,甚至是 9999,我如何在 QML 中限制它。
您可以像这样使用 RegularExpressionValidator :
TextField{
validator: RegularExpressionValidator{
regularExpression: /^[1-9][0-9]{2}|[1-4][0-9]{3}|5000/
}
}
只要用户可以输入 999 这样的数字,那么 TextField
也将允许输入 99 这样的数字。您始终可以检查 TextField
的只读 属性 acceptableInput
以确保输入的值在范围内。