SpinBox和DoubleSpinBox用于数字的输入,组件右侧带有上下三角箭头可以调节,当然QT的界面都是可以通过鼠标滚轮来调节的。SpinBox和DoubleSpinBox具体区别如下:
注意: SpinBox和DoubleSpinBox都是QAbstractSpinBox的子类,所以大部分属性和方法都可以通用,如果没有说明,表示通用。另外有些功能可以用QAbstractSpinBox的函数实现,本篇文章不对QAbstractSpinBox的内容进行描述。包括SpinBox和DoubleSpinBox里的虚函数也不过多讲解,完全可以自己用函数实现。
属性 | 描述 |
prefix | 前缀,如 ¥100 的 “¥” |
suffix | 后缀,如 60min 的 “min” |
minimum | 输入数字的下限,可以为负值 |
maximum | 输入数字的上限 |
singleStep | 步长,每次调节所增减的值 |
stepType | 步进模式 默认DefaultStepType为以十进制的方式步进,例如1.0 > 2.0 > 3.0; AdaptiveDecimalStepType为自适应的方式步进,例如1.0 > 1.1 > 1.2 |
value | 显示的数值,输入十进制即可,QT会自动转换为相应的进制值 |
displayIntegerBase【SpinBox专有】 | 显示的进制,如输入2表示以2进制显示 |
decimals 【DoubleSpinBox专有】 | 表示小数的位数 |
返回不带前后缀的数据,例如:SpinBox里的数据显示为 “¥10 /h”,使用该函数返回"10"。
2.int value()获取数值。
3.void setValue(int val)设置数值。
4.int maximum()获取数值上限,例如:返回99,表示设置该组件最大显示数值为99。
5.void setMaximum(int max)设置数值上限,例如:setMaximum(888),表示设置该组件数值上限为888。
6.int minimum()获取数值下限,例如:返回-10,表示设置该组件最小显示数值为-10。
7.void setMinimum(int min)设置数值下限,例如:setMinimum(-15),表示设置该组件数值下限为-15。
8.void setRange(double minimum, double maximum)设置数值的上限和下限。
9.str prefix()获取前缀,例如:返回 “¥10 /h” 的 “¥”。
10.void setPrefix(str prefix)设置前缀,例如:setPrefix("$")。
11.str suffix()获取后缀,例如:返回 “¥10 /h” 的 “/h”。
12.void setSuffix (str suffix)设置后缀,例如:setPrefix(“km”)。
13.int singleStep()获取步长,例如:返回 “1” ,表示每次调节SpinBox数值为±1。
14.void setSingleStep(int val)获取步长,例如:setSingleStep(10),则每次调节数值都是±10。
15.int stepType()获取步进类型,返回的是整数,实际对应stepType的枚举,0 - DefaultStepType,1 - AdaptiveDecimalStepType。
16.void setSingleStep(int val)设置步进类型,例如:setSingleStep(1),表示将步进类型改为AdaptiveDecimalStepType。
17.int displayIntegerBase()【SpinBox专有】返回SpinBox显示的进制,例如:返回10,表示该组件使用10进制模式显示。
18.void setDisplayIntegerBase(int base)【SpinBox专有】设置SpinBox显示的进制,例如:setDisplayIntegerBase(8),表示设置该组件使用8进制模式显示。
19.int decimals()【DoubleSpinBox专有】获取DoubleSpinBox的小数位数。
20.void setDecimals(int prec)【DoubleSpinBox专有】设置DoubleSpinBox的小数位数。
当编辑框按下回车后触发。
2.textChanged(str)当SpinBox内容被改变时,返回SpinBox里的文本。
3.valueChanged(str)当SpinBox数值被改变时,返回SpinBox里的文本。
4.valueChanged(int)当SpinBox数值被改变时,返回SpinBox里的数值。
对SpinBox的合理使用可以大大减少我们的工作量,如果用编辑框和按钮来实现,除了增加工作量外还可能存在潜在的BUG。在实际编写过程中,很多属性都能在QtDesigner里面找到,结合QT文档,加上试着写下代码看看效果,我们就能更快地理解每个组件的使用方法。
欢迎光临 纳速健身 (https://nasue.com/) | Powered by Discuz! X3.4 |