- class QIntValidator#
《
QIntValidator》类提供了一种验证器,确保字符串在指定的范围内包含一个有效的整数。更多...概述#
属性#
方法#
def
__init__()def
bottom()def
setBottom()def
setRange()def
setTop()def
top()
信号#
def
bottomChanged()def
topChanged()
注意
此文档可能包含从C++自动翻译到Python的代码片段。我们始终欢迎对片段翻译的贡献。如果您发现翻译有误,您也可以通过在https:/bugreports.qt.io/projects/PYSIDE上创建一个工单来告知我们。
详细说明#
警告
本节包含从C++自动翻译到Python的代码片段,可能包含错误。
使用示例
validator = QIntValidator(100, 999, self) edit = QLineEdit(self) # the edit lineedit will only accept integers between 100 and 999 edit.setValidator(validator)
下面我们展示了几个验证器的示例。在实际情况中,它们通常与上面示例中的小部件相关联。
str = QString() pos = 0 v = QIntValidator(100, 900, self) str = "1" v.validate(str, pos) # returns Intermediate str = "012" v.validate(str, pos) # returns Intermediate str = "123" v.validate(str, pos) # returns Acceptable str = "678" v.validate(str, pos) # returns Acceptable str = "999" v.validate(str, pos) # returns Intermediate str = "1234" v.validate(str, pos) # returns Invalid str = "-123" v.validate(str, pos) # returns Invalid str = "abc" v.validate(str, pos) # returns Invalid str = "12cm" v.validate(str, pos) # returns Invalid
请注意,值
999返回中间值。由不超过最大值的位数组成的值被认为是中间值。这是因为阻止一个数字在范围内的数字不一定是最后输入的位数。这也意味着中间值可以有前导零。最小值和最大值可以用一个调用
setRange()来设置,或者分别使用setBottom()和setTop()来设置。QIntValidator使用它的locale()来解释数字。例如,在阿拉伯语区域设置中,QIntValidator将接受阿拉伯数字。注意
在
locale()上设置的QLocale::NumberOptions也会影响数字的解释方式。例如,由于默认情况下没有设置QLocale::RejectGroupSeparator,验证器将接受分组分隔符。因此,建议使用QLocale::toInt()来获取数值。另请参阅
QDoubleValidatorQRegularExpressionValidatortoInt()Line Edits Example注意
当使用
from __feature__ import true_property时,可以直接使用属性,否则可以通过访问器函数来使用。- 属性 bottomᅟ: int#
此属性包含验证器可接受的最小值。
默认情况下,此属性值是从可用最低有符号整数(-2147483648)派生的。
另请参阅
- 访问函数
- 属性 topᅟ: int#
此属性包含验证器可接受的最大值。
默认情况下,此属性的值源自可用的最大有符号整数(2147483647)。
另请参阅
- 访问函数
构造一个接受所有整数的验证器,其中包含一个
parent对象。- __init__(bottom, top[, parent=None])
- 参数:
bottom – int
top – int
parent –
QObject
构造一个包含
parent的验证器,该验证器接受从minimum到maximum的整数(包括这两个值)。- bottom()#
- 返回类型:
int
另请参阅
属性
bottom的getter。- bottomChanged(bottom)#
- 参数:
bottom – int
属性
bottom的的通知信号。属性
bottom的setter。- setRange(bottom, top)#
- 参数:
bottom – int
top – int
只能设置验证器的范围以接受从
bottom到top之间的整数(包括这两个值)。属性
top的setter。属性
top的getter。- topChanged(top)#
- 参数:
top – int
属性
topᅟ的通知信号。