pyqt5程序运行进度条
时间: 2023-12-07 15:04:22 浏览: 215
python如何通过pyqt5实现进度条
可以使用QProgressBar来实现进度条的效果。具体实现步骤如下:
1. 在UI界面中添加一个QProgressBar控件,设置其初始值和范围。
2. 在程序中使用QThread来实现耗时操作,例如读取大量数据或者进行复杂计算。
3. 在QThread中使用信号和槽机制来更新QProgressBar的值。
以下是一个简单的示例代码:
```python
from PyQt5.QtCore import QThread, pyqtSignal
from PyQt5.QtWidgets import QApplication, QMainWindow, QProgressBar
import time
class Worker(QThread):
progress_signal = pyqtSignal(int)
def run(self):
for i in range(101):
time.sleep(0.1)
self.progress_signal.emit(i)
class MainWindow(QMainWindow):
def __init__(self):
super().__init__()
self.initUI()
def initUI(self):
self.progress_bar = QProgressBar(self)
self.progress_bar.setGeometry(30, 40, 200, 25)
self.setCentralWidget(self.progress_bar)
self.worker = Worker()
self.worker.progress_signal.connect(self.update_progress_bar)
self.worker.start()
def update_progress_bar(self, value):
self.progress_bar.setValue(value)
if __name__ == '__main__':
app = QApplication([])
window = MainWindow()
window.show()
app.exec_()
```
阅读全文