PYQT制作动态时钟

所有代码:

python 复制代码
import sys
from PyQt5.QtCore import Qt, QTimer, QRect
from PyQt5.QtGui import QPixmap, QTransform, QPainter, QImage
from PyQt5.QtWidgets import QApplication, QLabel
from PyQt5 import uic
import new


def adder():
    global i
    global angle_s, angle_m, angle_h
    i += 1
    angle_s += 6
    if angle_s == 360:
        angle_s = 0
        angle_m = i / 10
        angle_h = i / 120
        if angle_m == 360:
            angle_m = 0
        if angle_h == 360:
            angle_h = 0
            i = 0


if __name__ == '__main__':
    app = QApplication(sys.argv)
    form = uic.loadUi('clock.ui')  # 导入ui
    form.show()

    form.label_second.setAlignment(Qt.AlignCenter)
    form.label_minute.setAlignment(Qt.AlignCenter)
    form.label_hour.setAlignment(Qt.AlignCenter)

    # 加载并设置图片
    image_second = QPixmap("second300")
    form.label_second.setPixmap(image_second)
    image_minute = QPixmap("minute300")
    form.label_minute.setPixmap(image_minute)
    image_hour = QPixmap("hour300")
    form.label_hour.setPixmap(image_hour)

    i = 0
    angle_s = 0
    angle_m = 0
    angle_h = 0

    timer = QTimer()
    timer.start(100)
    timer.timeout.connect(adder)
    timer.timeout.connect(lambda: form.label_second.setPixmap(image_second.transformed(QTransform().rotate(angle_s))))
    timer.timeout.connect(lambda: form.label_minute.setPixmap(image_minute.transformed(QTransform().rotate(angle_m))))
    timer.timeout.connect(lambda: form.label_hour.setPixmap(image_hour.transformed(QTransform().rotate(angle_h))))

    sys.exit(app.exec_())
相关推荐
wuyk5556 天前
PyQt6-第10讲-PDF工具箱
python·microsoft·pdf·pyqt
wuyk5556 天前
PyQt6-第14讲-数据库与Excel双向同步
数据库·python·ui·excel·pyqt
MrWind灬7 天前
我给自己写了个 Kafka 桌面客户端:MrWindKafkaClient
kafka·pyqt
万粉变现经纪人8 天前
如何解决 pip install 安装报错 检测到 yanked 版本需更换可用版本 问题
人工智能·python·scrapy·numpy·pandas·pyqt·pip
MoRanzhi12039 天前
第6篇(下)· 使用 PyQt5 实现 2048 高性能计算版:统一运行控制与跨模式安全交接
python·pyqt·进程管理·状态机·软件架构·并发控制·数据一致性
wuyk55511 天前
PyQt6-第06讲-主窗口框架
python·pyqt
MoRanzhi120311 天前
第6篇(中)· 使用 PyQt5 实现 2048 高性能计算版:无头后台求解与三档运行模式
python·pyqt·数据持久化·多进程·进程间通讯·后台任务·断点续跑
wuyk55516 天前
PyQt6-第05讲-QtDesigner工作流与ui文件
python·ui·pyqt
金融小师妹17 天前
多因子时间序列分析:美元与美债收益率变化对黄金价格+1.6%的影响
c语言·人工智能·git·决策树·pyqt
金融小师妹17 天前
事件驱动分析模型:9月PPI超预期与美联储利率预期对黄金价格的影响
人工智能·云计算·线性回归·pyqt