PySide6.QtWidgets.QSpinBox¶
- 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()
插槽¶
def
setValue()
信号¶
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,点击“向上”将给出0,如果wrapping()
设置为true。如果您想要循环行为,请使用setWrapping()
。显示的值可以附加任意字符串,例如货币或测量单位。参见
setPrefix()
和setSuffix()
。微调框中的文本可以通过text()
获取(包括任何prefix()
和suffix()
),或者通过cleanText()
获取(没有prefix()
,没有suffix()
,也没有前导或尾随的空格)。除了数值范围之外,通常还希望为用户提供一个特殊(通常是默认)的选择。有关如何使用
QSpinBox
实现这一点,请参见setSpecialValueText()
。子类化 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)
另请参阅
QDoubleSpinBox
QDateTimeEdit
QSlider
Spin Boxes 示例注意
当使用
from __feature__ import true_property
时,属性可以直接使用,否则通过访问器函数使用。- property cleanTextᅟ: str¶
此属性保存旋转框的文本,不包括任何前缀、后缀或前导或尾随空格。
- Access functions:
- property displayIntegerBaseᅟ: int¶
此属性用于保存用于显示微调框值的基数。
默认的displayIntegerBase值为10。
- Access functions:
- property maximumᅟ: int¶
此属性保存旋转框的最大值。
设置此属性时,如有必要,将调整最小值,以确保范围保持有效。
默认的最大值是99。
- Access functions:
- property minimumᅟ: int¶
此属性保存旋转框的最小值。
设置此属性时,如有必要,将调整
maximum
以确保范围保持有效。默认最小值为0。
- Access functions:
- property prefixᅟ: str¶
警告
本节包含从C++自动翻译到Python的代码片段,可能包含错误。
此属性保存旋转框的前缀。
前缀会添加到显示值的开头。典型用途是显示测量单位或货币符号。例如:
sb.setPrefix("$")
要关闭前缀显示,请将此属性设置为空字符串。默认情况下没有前缀。当
value()
==minimum()
且设置了specialValueText()
时,前缀不会显示。如果没有设置前缀,prefix() 返回一个空字符串。
- Access functions:
- property singleStepᅟ: int¶
此属性保存步长值。
当用户使用箭头更改微调框的值时,该值将按singleStep的量递增/递减。默认值为1。设置小于0的singleStep值无效。
- Access functions:
- property stepTypeᅟ: QAbstractSpinBox.StepType¶
此属性保存步长类型。
步长类型可以是单步或自适应小数步。
- Access functions:
- property suffixᅟ: str¶
警告
本节包含从C++自动翻译到Python的代码片段,可能包含错误。
此属性保存微调框的后缀。
后缀被附加到显示值的末尾。典型用途是显示测量单位或货币符号。例如:
sb.setSuffix(" km")
要关闭后缀显示,请将此属性设置为空字符串。默认情况下没有后缀。如果设置了
specialValueText()
,则不会显示minimum()
的后缀。如果没有设置后缀,suffix() 返回一个空字符串。
- Access functions:
- property valueᅟ: int¶
此属性保存旋转框的值。
setValue() 如果新值与旧值不同,将发出
valueChanged()
。value 属性有第二个通知信号,包括微调框的前缀和后缀。- Access functions:
构造一个最小值为0,最大值为99,步进值为1的微调框。初始值设置为0。它的父对象是
parent
。- cleanText()¶
- Return type:
字符串
属性
cleanTextᅟ
的获取器。- displayIntegerBase()¶
- Return type:
整数
属性
displayIntegerBaseᅟ
的获取器。- maximum()¶
- Return type:
整数
另请参阅
属性
maximumᅟ
的获取器。- minimum()¶
- Return type:
整数
另请参阅
属性
minimumᅟ
的获取器。- prefix()¶
- Return type:
字符串
另请参阅
属性
prefixᅟ
的获取器。- setDisplayIntegerBase(base)¶
- Parameters:
base – 整数
另请参阅
属性
displayIntegerBaseᅟ
的设置器。属性
maximumᅟ
的设置器。属性
minimumᅟ
的设置器。属性
prefixᅟ
的设置器。- setRange(min, max)¶
- Parameters:
min – int
max – int
警告
本节包含从C++自动翻译到Python的代码片段,可能包含错误。
方便的函数,通过一次函数调用设置
minimum
和maximum
值。setRange(minimum, maximum)
等同于:
- setSingleStep(val)¶
- Parameters:
val – 整数
另请参阅
属性
singleStepᅟ
的设置器。将微调框的步长类型设置为
stepType
,即单步或自适应十进制步长。自适应十进制步长意味着步长将不断调整到当前
value
的十分之一。因此,当值为1100时,步长设置为100,因此增加一次会将其增加到1200。对于1200,增加一次会将其增加到1300。对于负值,从-1100减少一次会变为-1200。考虑到步进方向以处理边缘情况,因此从100向下步进会将值变为99而不是90。因此,先向上步进再向下步进——或反之——总是会回到起始值;99 -> 100 -> 99。
设置此选项将导致微调框忽略
singleStep
的值,尽管它会被保留,以便在稍后关闭自适应小数步长时singleStep
生效。另请参阅
属性
stepTypeᅟ
的设置器。属性
suffixᅟ
的设置器。属性
valueᅟ
的设置器。- singleStep()¶
- Return type:
整数
另请参阅
属性
singleStepᅟ
的获取器。- stepType()¶
- Return type:
另请参阅
属性
stepTypeᅟ
的获取器。- suffix()¶
- Return type:
字符串
另请参阅
属性
suffixᅟ
的获取器。- textChanged(text)¶
- Parameters:
文本 – str
每当微调框的文本发生变化时,都会发出此信号。新文本通过
text
传递,并带有prefix()
和suffix()
。- textFromValue(val)¶
- Parameters:
val – 整数
- Return type:
字符串
每当微调框需要显示给定的
value
时,都会使用此虚拟函数。默认实现返回一个字符串,其中包含使用locale()
.toString()以标准方式打印的value
,但除非设置了setGroupSeparatorShown()
,否则会删除千位分隔符。重新实现可以返回任何内容。(请参阅详细描述中的示例。)注意:
QSpinBox
不会为specialValueText()
调用此函数,并且返回值中不应包含prefix()
或suffix()
。如果你重新实现这个,你可能也需要重新实现
valueFromText()
和validate()
另请参阅
valueFromText()
validate()
groupSeparator()
- value()¶
- Return type:
整数
另请参阅
属性
valueᅟ
的获取器。- valueChanged(i)¶
- Parameters:
i – 整数
每当微调框的值发生变化时,就会发出此信号。新值的整数值在
i
中传递。属性
valueᅟ
的通知信号。- valueFromText(text)¶
- Parameters:
文本 – str
- Return type:
整数
每当微调框需要将用户输入的
text
解释为值时,就会使用此虚拟函数。需要以非数字方式显示微调框值的子类需要重新实现此函数。
注意:
QSpinBox
单独处理specialValueText()
;此函数仅涉及其他值。另请参阅
textFromValue()
validate()