一、前言
在现代GUI(图形用户界面)应用程序中,计时器是一个常见的功能,用于在特定时间间隔内执行某些操作。PyQt5是一个流行的Python库,用于创建跨平台的桌面应用程序。它提供了丰富的控件和事件处理机制,使得开发GUI应用变得简单高效。本文将展示如何使用PyQt5和QTimer创建一个简单的计时器应用,该应用每隔一秒更新一次标签的文本内容。
二、整体架构流程
-
导入必要的模块:
import sys from PyQt5.QtWidgets import QApplication, QLabel, QVBoxLayout, QWidget from PyQt5.QtCore import QTimer
-
定义MainWindow类:
MainWindow类继承自QWidget类,作为应用程序的主窗口。class MainWindow(QWidget): def __init__(self): super().__init__() self.initUI()
-
初始化用户界面:
- 创建一个QLabel对象,显示初始文本"Timer not started…"。
- 创建一个QVBoxLayout对象,用于垂直布局管理。
- 将QLabel对象添加到布局管理器中,并将布局管理器设置为当前窗口的布局。
- 创建一个QTimer对象,并设置其父对象为当前窗口,以便定时器在窗口销毁时自动删除。
- 连接QTimer对象的timeout信号到当前窗口的updateLabel槽函数。
- 启动定时器,设置时间间隔为1000毫秒(即1秒)。
def initUI(self): self.label = QLabel("Timer not started...", self)