PyQT学习笔记

左边的控件是 QDial , 右边的控件是 QSpinBox 。两者相互关联,转动刻度右边的数字随之改变,改变右边的数字,左边的刻度盘也跟着转到指定位置。

代码

复制代码
import sys
from PyQt5.QtWidgets import QApplication, QWidget,QHBoxLayout,QSpinBox,QDial

class MyWindow(QWidget):
    def __init__(self):
        # 切记一定要调用父类的__init__方法,因为它里面有很多对UI空间的初始化操作
        super().__init__()

        # 设置大小
        self.resize(300, 300)
        # 设置标题

        h_layout = QHBoxLayout() 
        self.spinBox = QSpinBox()
        self.dial = QDial()
        h_layout.addWidget(self.dial)
        h_layout.addWidget(self.spinBox)
        self.setLayout(h_layout)
        self.spinBox.valueChanged.connect(self.changed_spinBox)
        self.dial.valueChanged.connect(self.changed_dial)

    def changed_spinBox(self, value):
        # 槽函数,点击按钮则调用该函数
        self.dial.setValue(value)
        # 这里的参数正好是信号发出,传递的参数
        print("数值改变啦", value)

    def changed_dial(self, value):
        # 槽函数,点击按钮则调用该函数
        self.spinBox.setValue(value)
        # 这里的参数正好是信号发出,传递的参数
        print("数值改变啦", value)


if __name__ == '__main__':
    app = QApplication(sys.argv)   #只要是QT制作的app,必须只有一个QApplication对象

    w = MyWindow()             #创建一个 QWidget 对象
    # 设置窗口标题
    w.setWindowTitle("作业")
    # 展示窗口
    w.show()

    # 程序进行循环等待状态
    app.exec()             #程序开始运行
相关推荐
若无情我 纸小铭7 小时前
Nginx学习笔记(二) Nginx--connection&request
笔记·学习·nginx
TimeLess薄凉7 小时前
嵌入式调试笔记<4>使用可调电源接负载电压被拉低
笔记
paopaokaka_luck8 小时前
基于springboot3+vue3的云南本土影视文旅推荐平台(协同过滤算法、Echarts图形化分析)
前端·spring boot·学习·算法·echarts·mybatis
paopaokaka_luck18 小时前
基于springboot3+vue3的企业考勤管理系统(部门树递归、Echarts图形化分析)
开发语言·spring boot·学习·echarts·mybatis·需求分析·代码规范
minglie118 小时前
zynq高频小数据量PS闭环 抖动时间的测量
学习
V哥AI增长18 小时前
小红书笔记在生成式AI引擎中的可见性机制解析:从抓取原理到GEO工程化实践
大数据·人工智能·笔记
long31618 小时前
MySQL 学习练习(配套 01 入门资料)
数据库·学习·mysql
梦雨生生19 小时前
java开发工具(学习第一天)
java·开发语言·学习
Hotchip_MEMS1 天前
当雾化器遇上MEMS:一场从交互到制造的全链路效率提升
人工智能·笔记·物联网·电脑·制造
是上好佳佳佳呀1 天前
【深度学习|Day02】PyTorch 深度学习笔记(下):张量运算与自动微分
pytorch·笔记·深度学习