25. PyQt6 QProgressBar
2023-10-17 python 1148
import sys
from PyQt6.QtWidgets import QApplication, QMainWindow, QProgressBar, QPushButton
from PyQt6.QtGui import QGuiApplication
from PyQt6.QtCore import QBasicTimer
class App(QMainWindow):
def __init__(self):
super().__init__()
self.step = None
self.timer = None
self.btn = None
self.pbar = None
self.initUI()
def initUI(self):
self.setWindowTitle("PyQt6 QProgressBar")
self.pbar = QProgressBar(self)
self.pbar.setGeometry(30, 40, 200, 25)
self.btn = QPushButton("开始", self)
self.btn.move(40, 80)
self.btn.clicked.connect(self.doAction)
self.timer = QBasicTimer()
self.step = 0
self.setGeometry(100, 100, 400, 300)
self.center()
def timerEvent(self, e):
if self.step > 100:
self.timer.stop()
self.btn.setText("完毕")
return
self.step = self.step + 1
self.pbar.setValue(self.step)
def doAction(self):
if self.timer.isActive():
self.timer.stop()
self.btn.setText("开始")
else:
self.timer.start(100, self)
self.btn.setText("结束")
def center(self):
qr = self.frameGeometry()
cp = QGuiApplication.primaryScreen().availableGeometry().center()
qr.moveCenter(cp)
self.move(qr.topLeft())
if __name__ == "__main__":
app = QApplication(sys.argv)
cls_app = App()
cls_app.show()
sys.exit(app.exec())
很赞哦! (0)
相关文章
文章评论
-
-
-
0条评论