PySide6.QtWidgets.QDoubleSpinBox¶
- class QDoubleSpinBox¶
QDoubleSpinBox类提供了一个用于输入双精度浮点数的微调框部件。更多…概要¶
属性¶
cleanTextᅟ- 旋转框的文本,不包括任何前缀、后缀或前导或尾随空格decimalsᅟ- 旋转框的精度,以小数表示maximumᅟ- 旋转框的最大值minimumᅟ- 旋转框的最小值prefixᅟ- 旋转框的前缀singleStepᅟ- 步长值stepTypeᅟ- 步骤类型suffixᅟ- 微调框的后缀valueᅟ- 旋转框的值
方法¶
def
__init__()def
cleanText()def
decimals()def
maximum()def
minimum()def
prefix()def
setDecimals()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上创建工单来告知我们。
详细描述¶
QDoubleSpinBox允许用户通过点击上下按钮或按键盘上的上下键来增加或减少当前显示的值。用户也可以手动输入值。该微调框支持双精度值,但可以通过validate()、textFromValue()和valueFromText()扩展以使用不同的字符串。每次值变化时,
QDoubleSpinBox会发出valueChanged()和textChanged()信号,前者提供一个 double 值,后者提供一个 QString。textChanged()信号提供包含prefix()和suffix()的值。当前值可以通过value()获取,并通过setValue()设置。注意:
QDoubleSpinBox会对数字进行四舍五入,以便它们可以以当前的精度显示。在设置为2位小数的QDoubleSpinBox中,调用setValue(2.555) 将导致value()返回2.56。点击上下按钮或使用键盘加速器的上下箭头将以
singleStep()的大小逐步增加或减少当前值。如果你想改变这种行为,你可以重新实现虚函数stepBy()。最小值和最大值以及步长可以通过其中一个构造函数设置,并且可以稍后使用setMinimum()、setMaximum()和setSingleStep()进行更改。spinbox默认的精度为2位小数,但可以使用setDecimals()进行更改。大多数微调框是定向的,但
QDoubleSpinBox也可以作为循环微调框操作,即如果范围是0.0-99.9且当前值是99.9,当wrapping()设置为true时,点击“向上”将得到0。如果您想要循环行为,请使用setWrapping()。显示的值可以附加任意字符串,例如货币或测量单位。参见
setPrefix()和setSuffix()。微调框中的文本可以通过text()获取(包括任何prefix()和suffix()),或者通过cleanText()获取(没有prefix(),没有suffix(),也没有前导或尾随的空格)。除了数值范围之外,通常还希望为用户提供一个特殊(通常是默认)的选择。有关如何使用
QDoubleSpinBox实现此功能,请参见setSpecialValueText()。注意
QDoubleSpinBox的显示值除了可能的前缀和后缀内容外,限制为18个字符。此限制用于确保即使在数值极大的情况下,双精度旋转框仍可使用。另请参阅
QSpinBoxQDateTimeEditQSlider旋转框示例注意
当使用
from __feature__ import true_property时,属性可以直接使用,否则通过访问器函数使用。- property cleanTextᅟ: str¶
此属性保存旋转框的文本,不包括任何前缀、后缀或前导或尾随空格。
- Access functions:
- property decimalsᅟ: int¶
此属性保存微调框的精度,以小数表示。
设置微调框将使用多少位小数来显示和解释双精度数。
警告
decimals的最大值是 DBL_MAX_10_EXP + DBL_DIG(即 323),这是由于 double 类型的限制。注意:最大值、最小值和值可能会因更改此属性而发生变化。
- Access functions:
- property maximumᅟ: float¶
此属性保存旋转框的最大值。
设置此属性时,如有必要,
minimum会被调整,以确保范围保持有效。默认的最大值是99.99。
注意:最大值将被四舍五入以匹配小数位数属性。
另请参阅
- Access functions:
- property minimumᅟ: float¶
此属性保存旋转框的最小值。
设置此属性时,如有必要,将调整
maximum以确保范围保持有效。默认最小值为0.0。
注意:最小值将被四舍五入以匹配小数位数属性。
- Access functions:
- property prefixᅟ: str¶
警告
本节包含从C++自动翻译到Python的代码片段,可能包含错误。
此属性保存旋转框的前缀。
前缀会添加到显示值的开头。典型用途是显示测量单位或货币符号。例如:
spinbox.setPrefix("$")
要关闭前缀显示,请将此属性设置为空字符串。默认情况下没有前缀。当
value()==minimum()且设置了specialValueText()时,前缀不会显示。如果没有设置前缀,prefix() 返回一个空字符串。
- Access functions:
- property singleStepᅟ: float¶
此属性保存步长值。
当用户使用箭头更改微调框的值时,该值将按singleStep的量递增/递减。默认值为1.0。设置小于0的singleStep值无效。
- Access functions:
- property stepTypeᅟ: QAbstractSpinBox.StepType¶
此属性保存步长类型。
步长类型可以是单步或自适应小数步。
- Access functions:
- property suffixᅟ: str¶
警告
本节包含从C++自动翻译到Python的代码片段,可能包含错误。
此属性保存微调框的后缀。
后缀被附加到显示值的末尾。典型用途是显示测量单位或货币符号。例如:
spinbox.setSuffix(" km")
要关闭后缀显示,请将此属性设置为空字符串。默认情况下没有后缀。如果设置了
specialValueText(),则不会显示minimum()的后缀。如果没有设置后缀,suffix() 返回一个空字符串。
- Access functions:
- property valueᅟ: float¶
此属性保存旋转框的值。
setValue() 如果新值与旧值不同,将发出
valueChanged()。value 属性有第二个通知信号,包括微调框的前缀和后缀。注意:该值将被四舍五入,以便可以使用当前的小数设置显示。
另请参阅
- Access functions:
构造一个最小值为0.0,最大值为99.99的微调框,步进值为1.0,精度为2位小数。初始值设置为0.00。该微调框具有给定的
parent。- cleanText()¶
- Return type:
字符串
属性
cleanTextᅟ的获取器。- decimals()¶
- Return type:
整数
另请参阅
属性
decimalsᅟ的获取器。- maximum()¶
- Return type:
浮点数
另请参阅
属性
maximumᅟ的获取器。- minimum()¶
- Return type:
浮点数
另请参阅
属性
minimumᅟ的获取器。- prefix()¶
- Return type:
字符串
另请参阅
属性
prefixᅟ的获取器。- setDecimals(prec)¶
- Parameters:
prec – 整数
另请参阅
属性
decimalsᅟ的设置器。属性
maximumᅟ的设置器。属性
minimumᅟ的设置器。属性
prefixᅟ的设置器。- setRange(min, max)¶
- Parameters:
min – 浮点数
max – 浮点数
警告
本节包含从C++自动翻译到Python的代码片段,可能包含错误。
方便的函数,用于通过一次函数调用设置
minimum和maximum值。注意:最大值和最小值将被四舍五入以匹配小数位数属性。
setRange(minimum, maximum)
等同于:
- setSingleStep(val)¶
- Parameters:
val – 浮点数
另请参阅
属性
singleStepᅟ的设置器。将微调框的步长类型设置为
stepType,即单步或自适应十进制步长。自适应十进制步长意味着步长将不断调整到当前
value的十分之一。因此,当值为1100时,步长设置为100,因此增加一次会将其增加到1200。对于1200,增加一次会将其增加到1300。对于负值,从-1100减少一次会变为-1200。它也适用于任何十进制值,0.041 通过一次步进增加到 0.042。
考虑到步进方向以处理边缘情况,因此从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,u'f',decimals())打印的value,并且除非设置了setGroupSeparatorShown(),否则将删除千位分隔符。重新实现可以返回任何内容。注意:
QDoubleSpinBox不会为specialValueText()调用此函数,并且返回值中不应包含prefix()或suffix()。如果你重新实现这个,你可能也需要重新实现
valueFromText()。- value()¶
- Return type:
浮点数
另请参阅
属性
valueᅟ的获取器。- valueChanged(d)¶
- Parameters:
d – 浮点数
每当微调框的值发生变化时,都会发出此信号。新值在
d中传递。属性
valueᅟ的通知信号。- valueFromText(text)¶
- Parameters:
文本 – str
- Return type:
浮点数
每当微调框需要将用户输入的
text解释为值时,就会使用此虚拟函数。需要以非数字方式显示微调框值的子类需要重新实现此函数。
注意:
QDoubleSpinBox单独处理specialValueText();此函数仅涉及其他值。另请参阅
textFromValue()validate()