当前位置: 首页 > news >正文

建设企业网站的常见成本有哪些企业网站建设协议

建设企业网站的常见成本有哪些,企业网站建设协议,如何开发app软件平台,wordpress登陆界面背景图片QDoubleSpinBox 是 PyQt中用于输入浮点数的控件,支持键盘输入和上下箭头调整数值。与QtSpinBox不同,QtSpinBox是用于输入整数的控件。 关键属性和方法 QDoubleSpinBox 的关键属性和方法如下表所示: 方法/属性说明setRange(min, max)设置数…

QDoubleSpinBox 是 PyQt中用于输入浮点数的控件,支持键盘输入和上下箭头调整数值。与QtSpinBox不同,QtSpinBox是用于输入整数的控件。

关键属性和方法

QDoubleSpinBox 的关键属性和方法如下表所示:

方法/属性说明
setRange(min, max)设置数值范围
setSingleStep(step)设置步长(箭头点击一次的变化量)
setDecimals(n)设置小数位数
setValue(value)设置当前值
value()获取当前值
valueChanged数值变化时触发的信号
setPrefix(text)添加前缀文本
setSuffix(text)添加后缀文本

基础设置方法

  • setRange(min, max)
    设置数值范围(最小值 min,最大值 max)。
  • setMinimum(min) / setMaximum(max)
    单独设置最小值或最大值。
  • setSingleStep(step)
    设置步长(点击箭头时数值的变化量)。
  • setDecimals(prec)
    设置显示的小数位数(如 prec=2 保留两位小数)。
  • setValue(value)
    直接设置当前值(需确保值在范围内)。
  • setPrefix(text) / setSuffix(text)
    添加前缀或后缀文本(如单位符号)。

值获取方法

  • value()
    返回当前数值(浮点数类型)。
  • textFromValue(value) / valueFromText(text)
    自定义数值与文本的转换逻辑(用于输入验证或格式化)。

行为控制方法

  • setKeyboardTracking(enabled)
    控制是否在输入时实时更新值(默认 True,实时更新;设为 False 则在输入完成后更新)。
  • stepBy(steps)
    按步长增量调整值(正数增加,负数减少)。
  • stepUp() / stepDown()
    触发一次步长增加或减少操作。

输入验证方法

  • setCorrectionMode(mode)
    设置输入修正模式(如 QDoubleSpinBox.CorrectToNearestValue 自动修正非法值)。
  • validate(text, pos) / fixup(text)
    自定义输入验证逻辑(需重写方法)。

信号

  • valueChanged(double)
    数值变化时触发的信号(参数为当前值)。
  • editingFinished()
    用户结束编辑(如按下回车或焦点离开)时触发。

其他实用方法

  • clear()
    清空值(重置为最小值或 0.0,取决于范围)。
  • setAlignment(alignment)
    设置文本对齐方式(如 Qt.AlignRight)。
  • setReadOnly(enabled)
    设为只读模式(用户不可编辑)。

用法示例

控件初始化

from PyQt5.QtWidgets import QApplication, QWidget, QDoubleSpinBox, QVBoxLayoutapp = QApplication([])
window = QWidget()
layout = QVBoxLayout()# 创建控件并设置初始属性
spinbox = QDoubleSpinBox()
spinbox.setRange(-100.0, 100.0)   # 设置数值范围
spinbox.setSingleStep(0.5)        # 设置步长(箭头点击一次的变化量)
spinbox.setDecimals(2)            # 保留两位小数
spinbox.setValue(3.14)            # 设置初始值layout.addWidget(spinbox)
window.setLayout(layout)
window.show()
app.exec_()

信号与槽连接

当用户修改数值时,触发 valueChanged 信号:

def on_value_changed(value):print(f"当前值: {value}")spinbox.valueChanged.connect(on_value_changed)

动态调整范围

根据条件动态修改范围或步长:

# 当数值超过50时,自动扩展范围
def check_range(value):if value > 50.0:spinbox.setRange(0.0, 100.0)else:spinbox.setRange(0.0, 50.0)spinbox.valueChanged.connect(check_range)

格式化显示

添加前缀/后缀或自定义格式:

spinbox.setPrefix("温度: ")     # 添加前缀
spinbox.setSuffix("°C")        # 添加后缀# 使用自定义格式(如货币)
spinbox.setDecimals(0)
spinbox.setPrefix("$ ")

输入验证

限制用户输入非法值(如超过范围时自动修正):

spinbox.setKeyboardTracking(False)  # 输入完成后再验证(而非实时)def validate_input(value):if value < 0:return 0.0  # 自动修正为最小值return valuespinbox.valueFromText = lambda text: validate_input(float(text))

高级用法:自定义步长逻辑

根据当前值动态调整步长(如对数刻度):

def dynamic_step(value):if value < 1.0:return 0.1elif value < 10.0:return 0.5else:return 1.0spinbox.setSingleStep(0.1)  # 初始步长def on_step_up():current = spinbox.value()step = dynamic_step(current)spinbox.setValue(current + step)def on_step_down():current = spinbox.value()step = dynamic_step(current)spinbox.setValue(current - step)# 替换默认的上下箭头行为
spinbox.stepUp.connect(on_step_up)
spinbox.stepDown.connect(on_step_down)

http://www.dtcms.com/a/546979.html

相关文章:

  • 网站内容建设方法步骤泉州网站制作报价
  • vue2实现图片自定义裁剪功能(uniapp)
  • 银川网站建设银川wordpress邮箱验证配置
  • 2025年10月29日 AI大事件
  • 网络专题策划书模板专业的网站优化公司排名
  • 我们网站百度快照显示违规内容上鼎工程建设有限公司网站
  • uc网站模板百度企业信用信息查询
  • 中文wordpress插件seo页面如何优化
  • 有什么网站建设软件有哪些wordpress添加百度统计代码
  • 电子商务网站规划小程序商店大全
  • Python 实战:Web 漏洞 Python POC 代码及原理详解(2)
  • 软件网站设计师培训洛可可设计公司logo
  • 简单旅游网站开发苏州网站开发公司兴田德润放心
  • 天津网站开发上海商城网站建设
  • wordpress分页 标题网站优化标准
  • C 标准库 - <math.h>
  • 什么网站可以免费做试卷江油网站建设
  • 推广学校网站怎么做wordpress添加多语言
  • 公司注册好了怎么做网站南浔区城乡建设局网站
  • 【前端】时间相关知识点汇总
  • 建设工程消防设计备案网站网站建设公司如何做大
  • wordpress h1美化东莞公司网站做优化
  • 做写字楼用哪个网站更好WordPress 有趣插件
  • 网站后台是怎么做的网站设计的资质叫什么
  • mooc 网站建设情况制作营销网站
  • 做游戏ppt下载网站有哪些内容网站开发维护需要哪些人
  • 缺少自动化工具会如何降低效率
  • 网站设计 注意深圳福田住房和建设局网站
  • 快速入门Vue3,插值、动态绑定和避坑技巧你都搞懂了吗?
  • 上海企业网站制作多少钱画册印刷价格