


Fortschrittsbalkeneffekt, den Sie jeden Tag in PyQt5 lernen müssen
Apr 19, 2018 am 10:55 AMIn diesem Artikel wird hauptsächlich der Fortschrittsbalkeneffekt von PyQt5 vorgestellt, der einen gewissen Referenzwert hat.
Der Fortschrittsbalken ist die verwendete Steuerung. Es ist animiert, um den Benutzer darüber zu informieren, dass die Aufgabe voranschreitet. Das QProgressBar-Steuerelement stellt einen horizontalen oder vertikalen Fortschrittsbalken bereit. Programmierer können die Mindest- und Höchstwerte des Fortschrittsbalkens festlegen. Der Standardwert liegt zwischen 0 und 99.
#!/usr/bin/python3 # -*- coding: utf-8 -*- """ PyQt5 教程 这个例子显示了一个进度条控件。 作者:我的世界你曾经来过 博客:http://blog.csdn.net/weiaitaowang 最后编辑:2016年8月3日 """ import sys from PyQt5.QtWidgets import QApplication, QWidget, QProgressBar, QPushButton from PyQt5.QtCore import QBasicTimer class Example(QWidget): def __init__(self): super().__init__() self.initUI() def initUI(self): 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(300, 300, 280, 170) self.setWindowTitle('进度条') self.show() 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, value): if self.timer.isActive(): self.timer.stop() self.btn.setText('开始') else: self.timer.start(100, self) self.btn.setText('停止') if __name__ == '__main__': app = QApplication(sys.argv) ex = Example() sys.exit(app.exec_())
In unserem Beispiel haben wir ein horizontales Fortschrittsbalken-Steuerelement und ein Schaltflächen-Steuerelement. Klicken Sie auf die Schaltfläche, um den Fortschrittsbalken zu starten oder zu stoppen.
self.pbar = QProgressBar(self)
Verwenden Sie QProgressBar, um einen Fortschrittsbalken zu erstellen
self.timer = QBasicTimer()
Aktivieren Für den Fortschrittsbalken müssen wir ein Timer-Objekt verwenden.
self.timer.start(100, self)
Um das Timer-Ereignis zu starten, müssen wir seine start()-Methode aufrufen. Diese Methode benötigt zwei Parameter: den Timeout und das Objekt des Ereignisses, das empfangen wird.
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)
Jedes Objekt, das von QObject erbt, verfügt über einen timerEvent()-Ereignishandler. Damit das Timer-Ereignis auf den Fortschrittsbalken angewendet werden kann, haben wir diesen Ereignishandler neu geschrieben.
def doAction(self, value): if self.timer.isActive(): self.timer.stop() self.btn.setText('开始') else: self.timer.start(100, self) self.btn.setText('停止')
Verwenden Sie die Methode doAction(), um den Timer zu starten und zu stoppen.
Nachdem das Programm ausgeführt wurde
Verwandte Empfehlungen:
PyQt5 muss sein jeden Tag gelernt QSplitter implementiert die Fenstertrennung
Tooltip-Funktion, die jeden Tag in PyQt5 gelernt werden muss
Das obige ist der detaillierte Inhalt vonFortschrittsbalkeneffekt, den Sie jeden Tag in PyQt5 lernen müssen. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Heißer Artikel

Hot-Tools-Tags

Heißer Artikel

Heiße Artikel -Tags

Notepad++7.3.1
Einfach zu bedienender und kostenloser Code-Editor

SublimeText3 chinesische Version
Chinesische Version, sehr einfach zu bedienen

Senden Sie Studio 13.0.1
Leistungsstarke integrierte PHP-Entwicklungsumgebung

Dreamweaver CS6
Visuelle Webentwicklungstools

SublimeText3 Mac-Version
Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

Heiße Themen

Benutzer stoßen auf seltene Störungen: Bei Samsung Watch-Smartwatches treten plötzlich Probleme mit dem weißen Bildschirm auf

Kyushu Fengshen Assassin 4S Kühlertest Luftgekühlter „Assassin Master'-Stil

Exquisite Licht- und Schattenkunst im Frühling, Haqu H2 ist die kostengünstige Wahl

Test des Vollmodul-Netzteils Huntkey MX750P: 750 W geballte Platin-Stärke

Colorful Hidden Star P15 24 Test: Ein hartgesottener Allround-Gaming-Laptop mit gutem Aussehen und guter Leistung

4K-HD-Bilder ganz einfach verstehen! Dieses große multimodale Modell analysiert automatisch den Inhalt von Webplakaten und ist damit für Mitarbeiter sehr praktisch.

Ein echtes Ein-Objektiv-Erlebnis mit dem NIKKOR Z 28–400 mm f/4–8 VR-Objektiv
