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

pyqt5, 如何在窗口上显示10个点地循环进度条。

要在PyQt5窗口上显示从1个点逐渐增加到10个点,然后周而复始地循环,可以使用PyQt5的图形绘制功能和定时器来实现。以下是一个简单的例子:

import sys
from PyQt5.QtWidgets import QApplication, QWidget
from PyQt5.QtGui import QPainter, QColor, QBrush
from PyQt5.QtCore import Qt, QTimer

class PointDisplay(QWidget):
    def __init__(self):
        super().__init__()
        
        self.points = 1
        self.increment = True
        
        self.timer = QTimer(self)
        self.timer.timeout.connect(self.update_points)
        self.timer.start(1000)  # 1000 milliseconds = 1 second
        
        self.initUI()
        
    def initUI(self):
        self.setGeometry(100, 100, 400, 400)
        self.setWindowTitle('Point Display')
        self.show()
        
    def paintEvent(self, event):
        painter = QPainter(self)
        painter.setRenderHint(QPainter.Antialiasing)
        painter.setPen(Qt.NoPen)
        painter.setBrush(QColor(0, 0, 255))  # Blue color
        
        for i in range(self.points):
            x = 50 + 50 * i
            y = 200
            size = 20  # Increase the size of the ellipses
            painter.drawEllipse(x, y, size, size)
        
    def update_points(self):
        if self.increment:
            self.points += 1
            if self.points == 11:  # Reached 10, reset to 1
                self.points = 1
        else:
            self.points -= 1
                
        self.update()

if __name__ == '__main__':
    app = QApplication(sys.argv)
    window = PointDisplay()
    sys.exit(app.exec_())

定时器的时间间隔可以根据您的需求进行调整,以控制点的增加和减少速度。这只是一个简单的例子,您可以根据您的实际需求进行进一步的定制。

http://www.lryc.cn/news/110335.html

相关文章:

  • VM里ubuntu虚拟无法启动
  • 信息学奥赛一本通——1156:求π的值
  • BI报表工具有哪些作用?奥威BI全面剖析数据
  • 【云原生K8s】初识Kubernetes的理论基础
  • javaAPI(三):jdk8之前的日期API
  • 驱动开发(中断)
  • TypeScript最新语法总结
  • sentinel组件
  • 26 MFC序列化函数
  • GC 深入(小白,对gc有一个进一步的了解)
  • CSS前端面试
  • VB+SQL餐饮管理系统设计与实现
  • React入门学习笔记2
  • Palo Alto Networks® PA-220R 下一代防火墙 确保恶劣工况下的网络安全
  • 架构训练营学习笔记:5-2 负载均衡架构
  • 二叉树的性质、前中后序遍历【详细】
  • 涨姿势了,有意思的气泡 Loading 效果
  • 单片机中断系统
  • 二、JVM-深入运行时数据区
  • 随机验证码vue实现,登录验证码随机验证码数字和字母类型的
  • xlrd与xlwt操作Excel文件详解
  • A Survey of Embodied AI: From Simulators to Research Tasks 论文阅读
  • spark-sql数据重复之File Output Committer问题
  • 面试热题(前中序遍历构建树)
  • 美术:贴图
  • [MAUI]模仿微信“按住-说话”的交互实现
  • windows开机运行jar
  • 使用DockerFile一键创建自定义linux开发环境
  • “深入探索JVM:解密Java虚拟机的工作原理“
  • 【华为OD机试】数字最低位排序【2023 B卷|100分】