- 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()来获取数值。另请参阅
QDoubleValidator
QRegularExpressionValidator
toInt()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ᅟ
的通知信号。