- class QSpinBox#
-
摘要#
属性#
cleanTextᅟ
- 旋钮文本,不包括任何前缀、后缀、或前导和尾随空白displayIntegerBaseᅟ
- 用来显示旋钮值的基础maximumᅟ
- 旋钮的最大值minimumᅟ
- 旋钮的最小值prefixᅟ
- 旋钮的前缀singleStepᅟ
- 步进值stepTypeᅟ
- 步进类型suffixᅟ
- 旋钮的后缀valueᅟ
- 旋钮的值
方法
def
__init__()
def
cleanText()
def
maximum()
def
minimum()
def
prefix()
def
setMaximum()
def
setMinimum()
def
setPrefix()
def
setRange()
def
setSingleStep()
def
setStepType()
def
setSuffix()
def
singleStep()
def
stepType()
def
suffix()
def
value()
虚方法
def
textFromValue()
def
valueFromText()
槽(Slots)
def
setValue()
信号(Signals)
def
textChanged()
def
valueChanged()
注意
本文档可能包含从C++自动翻译到Python的片段。我们始终欢迎对片段翻译的贡献。如果您发现翻译中存在任何问题,您也可以通过在https:/bugreports.qt.io/projects/PYSIDE上创建工单来告知我们。
详细说明#
警告
本节包含从C++自动翻译到Python的代码片段,可能包含错误。
QSpinBox
用于处理整数和离散值集(例如,月份名称);对于浮点数请使用QDoubleSpinBox
。QSpinBox
允许用户通过点击上下按钮或按键盘上的上下键来增加或减少当前显示的值来选择值。用户也可以手动输入值。该微调框支持整数值,但可以通过validate()
、textFromValue()
和valueFromText()
方法使用不同的字符串来扩展。每次值变化时,
QSpinBox
会发出valueChanged()
和textChanged()
信号,前者提供一个 int 类型的值,后者提供一个 QString 类型的值。textChanged()
信号提供了带有prefix()
和suffix()
的值。当前值可以通过value()
检索,通过setValue()
设置。点击上下按钮或使用键盘快捷键的方向键可以增加或减少当前值,每次增加或减少的步长大小为
singleStep()
.如需更改此行为,可以重写虚拟函数stepBy()
.最小值、最大值和步长大小可以通过构造函数之一设置,并且可以在后续通过setMinimum()
、setMaximum()
和setSingleStep()
移除。大多数微调框都是方向性的,但
QSpinBox
也可以作为一个循环微调框来操作,即如果范围为0-99,并且当前值为99,则如果wrapping()
设置为 true,则点击“上”将给出0。若你想实现循环行为则使用setWrapping()
.显示的值可以通过任意字符串进行前后附加,例如表示货币或测量单位。请参阅
setPrefix()
和setSuffix()
以了解更多信息。通过text()
(包含任何prefix()
和suffix()
)或通过cleanText()
(不包括前缀、后缀以及前导和尾部空格)来检索微调框中的文本。通常需要在除了数值范围外给出一个特殊(通常是默认的)选择。请参阅
setSpecialValueText()
了解如何在QSpinBox
中实现此功能。QSpinBox的子类化#
如果使用
prefix()
、suffix()
和specialValueText()
不能提供足够控制,可以继承QSpinBox
并重新实现valueFromText()
和textFromValue()
方法。例如,下面是一个自定义的滚动框代码,允许用户输入图标大小(例如,“32 x 32”)。def valueFromText(self, QString text): regExp = QRegularExpression(tr("(\\d+)(\\s*[xx]\\s*\\d+)?")) Q_ASSERT(regExp.isValid()) match = regExp.match(text) if match.isValid(): return match.captured(1).toInt() return 0 def textFromValue(self, int value): return tr("%1 x %1").arg(value)
注意
当使用
from __feature__ import true_property
时,可以直接使用属性,否则可以通过访问函数使用。- property cleanTextᅟ: str#
此属性保存了滚动框的文本,排除了任何前缀、后缀或前导和尾随空格。
- 访问函数
- property displayIntegerBaseᅟ: int#
此属性保存用于显示滚动框值的基数。
默认的 displayIntegerBase 值为 10。
- property maximumᅟ: int#
此属性保存滚动框的最大值。
设置此属性时,如有必要,将调整最小值,以确保范围有效。
默认最大值为 99。
- 访问函数
- 属性 minimum: int#
此属性保存了滚动框的最小值。
在设置此属性时,如果需要,将调整
maximum
以确保范围保持有效。默认最小值为0。
- 访问函数
- 属性 prefix: str#
警告
本节包含从C++自动翻译到Python的代码片段,可能包含错误。
此属性保存了滚动框的前缀。
前缀将被添加到显示值的起始位置。典型用途是显示度量单位或货币符号。例如
sb.setPrefix("$")
要关闭前缀显示,将此属性设置为空字符串。默认没有前缀。当
value
==minimum
且specialValueText
已设置时,前缀不会显示。如果没有设置前缀,prefix() 返回空字符串。
- 访问函数
- 属性 singleStep: int#
此属性保存步进值。
当用户使用箭头更改滚动框的值时,值将增加/减少singleStep的量。默认值是1。设置为小于0的singleStep值将不会执行任何操作。
- 属性 stepType: QAbstractSpinBox.StepType#
此属性保存步进类型。
步进类型可以是单步或自适应小数步进。
- 访问函数
- 属性 suffix: str#
警告
本节包含从C++自动翻译到Python的代码片段,可能包含错误。
此属性保存滚动框的后缀。
后缀将附加到显示值的末尾。典型用法是显示测量单位或货币符号。例如
sb.setSuffix(" km")
要关闭后缀显示,将此属性设置为空字符串。默认值为无后缀。如果设置了
minimum()
,则不会显示specialValueText()
。如果没有设置后缀,suffix() 返回空字符串。
- 访问函数
- 属性 value₎: int#
此属性存储滚动框的值。
如果新值与旧值不同,setValue() 将发出
valueChanged()
。该 value 属性还有一个包含滚动框前缀和后缀的第二个通知信号。- 访问函数
使用最小值 0、最大值 99 和步长 1 构建滚动框,初始值为 0。它将
parent
作为父对象。- cleanText()#
- 返回类型:
str
getter 属性
cleanText
。- displayIntegerBase()#
- 返回类型:
int
属性
displayIntegerBase
的获取器。- maximum()#
- 返回类型:
int
参见
属性
maximum
的获取器。- minimum()#
- 返回类型:
int
参见
属性
minimum
的获取器。- prefix()#
- 返回类型:
str
参见
属性
prefix
的获取器。- setDisplayIntegerBase(base)#
- 参数:
base – int
属性
displayIntegerBase
的设置器。属性
maximum
的设置器。属性
minimum
的设置器。属性
prefix
的设置器。- setRange(min, max)#
- 参数:
min – int
max – int
警告
本节包含从C++自动翻译到Python的代码片段,可能包含错误。
通过单个函数调用来设置最小值和最大值的便利函数。
setRange(minimum, maximum)
等同于
- setSingleStep(val)#
- 参数:
val – int
参见
属性 singleStep 的设置器。
设置滚动框的步进类型为
stepType
,可以是单步或自适应十进制步进。自适应十进制步进意味着步长会连续调整到当前 value 的十的幂以下。因此,当值为1100时,步长设置为100,所以单击一次增加使其变为1200。对于1200,单击一次将其增加到1300。对于负值,从-1100向下步进到-1200。
在处理边缘情况时考虑了步进方向,因此从100向下步进将值变为99而不是90。因此,向上然后向下步进(或反之)始终落在起始值;99 -> 100 -> 99。
设置此选项将导致滚动框忽略 singleStep 的值,尽管它被保留,以便 singleStep 在自适应十进制步进关闭后生效。
参见
属性 stepType 的设置器。
属性 suffix 的设置器。
属性 value 的设置器。
- singleStep()#
- 返回类型:
int
属性 singleStep 的获取器。
属性
stepTypeᅟ
的获取器。- suffix()#
- 返回类型:
str
参见
属性
suffixᅟ
的获取器。- textChanged(arg__1)#
- 参数:
arg__1 – 字符串
当自旋框的文本发生变化时,会发出此信号。新文本通过
text
传递,并带有prefix()
和suffix()
。- textFromValue(val)#
- 参数:
val – int
- 返回类型:
str
此虚函数在需要显示提供的
value
时由自旋框使用。默认实现返回一个包含value
的字符串,该字符串以标准方式使用locale()
.toString() 打印,但如果没有设置setGroupSeparatorShown()
,则不会包含千位分隔符。重写可能返回任何内容。(请参见详细描述中的示例。)注意:
QSpinBox
不会为specialValueText()
调用此函数,并且不应对prefix()
或suffix()
进行包含。如果你重写此方法,可能还需要重写
valueFromText()
和validate()
- value()#
- 返回类型:
int
参见
属性
valueᅟ
的获取器。- valueChanged(arg__1)#
- 参数:
arg__1 – int
每次旋钮框的值更改时都会发出此信号。新值的整数值通过
i
传递。属性
valueᅟ
的通知信号。- valueFromText(text)#
- 参数:
text – str
- 返回类型:
int
此虚拟函数在旋钮框需要将用户输入的
text
解释为值时使用。需要以非数字方式显示旋钮框值的自定义类需要重新实现此函数。
注意:
QSpinBox
专门处理specialValueText()
;此函数仅关注其他值。参见
textFromValue()
validate()