PyQt5 控件学习(一个一个学习之QProgressBar)
QProgressBar 的继承图:
QProgressBar 的描述:
进度条
QProgressBar 的继承:
它是直接继承自QWidget
QProgressBar 的功能作用:
QProgressBar 的功能作用之构造函数:
from PyQt5.Qt import * #刚开始学习可以这样一下导入 import sys class Window(QWidget): def __init__(self): super().__init__() self.setWindowTitle("QProgressBar的学习") self.resize(400,400) self.set_ui() def set_ui(self): progressBar = QProgressBar(self) if __name__ == '__main__': app =QApplication(sys.argv) window = Window() window.show() sys.exit(app.exec_())
QProgressBar 的功能作用之设置范围和当前值:
from PyQt5.Qt import * #刚开始学习可以这样一下导入 import sys class Window(QWidget): def __init__(self): super().__init__() self.setWindowTitle("QProgressBar的学习") self.resize(400,400) self.set_ui() def set_ui(self): progressBar = QProgressBar(self) self.progressBar = progressBar print(progressBar.minimum()) print(progressBar.maximum()) # progressBar.setMaximum(200) # progressBar.setRange(0,200) progressBar.setValue(50) #繁忙状态 # progressBar.setRange(0,0 ) btn = QPushButton(self) btn.setText("按钮") btn.move(0,300) btn.clicked.connect(self.btn_clicked_slot) def btn_clicked_slot(self): self.progressBar.reset() if __name__ == '__main__': app =QApplication(sys.argv) window = Window() window.show() sys.exit(app.exec_())
QProgressBar 的功能作用之格式设置:
from PyQt5.Qt import * #刚开始学习可以这样一下导入 import sys class Window(QWidget): def __init__(self): super().__init__() self.setWindowTitle("QProgressBar的学习") self.resize(400,400) self.set_ui() def set_ui(self): progressBar = QProgressBar(self) self.progressBar = progressBar progressBar.resize(400,30) progressBar.setValue(50) # progressBar.setFormat("当前人数:%v/总人数%m %p%") progressBar.setFormat("当前人数:{}/总人数%m".format(progressBar.value()-progressBar.minimum())) btn = QPushButton(self) btn.setText("按钮") btn.move(0,300) btn.clicked.connect(self.btn_clicked_slot) def btn_clicked_slot(self): # self.progressBar.resetFormat() self.progressBar.setAlignment(Qt.AlignCenter) pass if __name__ == '__main__': app =QApplication(sys.argv) window = Window() window.show() sys.exit(app.exec_())
QProgressBar 的功能作用之文本操作:
QProgressBar 的功能作用之方向:
from PyQt5.Qt import * #刚开始学习可以这样一下导入 import sys class Window(QWidget): def __init__(self): super().__init__() self.setWindowTitle("QProgressBar的学习") self.resize(400,400) self.set_ui() def set_ui(self): progressBar = QProgressBar(self) self.progressBar = progressBar progressBar.resize(400,30) progressBar.setValue(50) # progressBar.setFormat("当前人数:%v/总人数%m %p%") progressBar.setFormat("当前人数:{}/总人数%m".format(progressBar.value()-progressBar.minimum())) btn = QPushButton(self) btn.setText("按钮") btn.move(0,300) btn.clicked.connect(self.btn_clicked_slot) def btn_clicked_slot(self): #文本操作 # self.progressBar.setTextVisible(False) # print(self.progressBar.text()) self.progressBar.resize(30,200) self.progressBar.setOrientation(Qt.Vertical) print(self.progressBar.isVisible()) #True ,但是看不到 # self.progressBar.setTextDirection(QProgressBar.TopToBottom) #也没有显示 pass if __name__ == '__main__': app =QApplication(sys.argv) window = Window() window.show() sys.exit(app.exec_())
QProgressBar 的功能作用之倒立外观(反转):
from PyQt5.Qt import * #刚开始学习可以这样一下导入 import sys class Window(QWidget): def __init__(self): super().__init__() self.setWindowTitle("QProgressBar的学习") self.resize(400,400) self.set_ui() def set_ui(self): progressBar = QProgressBar(self) self.progressBar = progressBar progressBar.resize(400,30) progressBar.setValue(50) # progressBar.setFormat("当前人数:%v/总人数%m %p%") progressBar.setFormat("当前人数:{}/总人数%m".format(progressBar.value()-progressBar.minimum())) btn = QPushButton(self) btn.setText("按钮") btn.move(0,300) btn.clicked.connect(self.btn_clicked_slot) def btn_clicked_slot(self): #反转 self.progressBar.setInvertedAppearance(True) pass if __name__ == '__main__': app =QApplication(sys.argv) window = Window() window.show() sys.exit(app.exec_())
QProgressBar 的信号:
from PyQt5.Qt import * #刚开始学习可以这样一下导入 import sys class Window(QWidget): def __init__(self): super().__init__() self.setWindowTitle("QProgressBar的学习") self.resize(400,400) self.set_ui() def set_ui(self): progressBar = QProgressBar(self) self.progressBar = progressBar progressBar.resize(400,30) progressBar.setValue(50) # progressBar.setFormat("当前人数:%v/总人数%m %p%") btn = QPushButton(self) btn.setText("按钮") btn.move(0,300) btn.clicked.connect(self.btn_clicked_slot) def btn_clicked_slot(self): timer = QTimer(self.progressBar) #定时器归 进度条拥有 def timer_func(): # print("xxx") if self.progressBar.value() >= self.progressBar.maximum(): timer.stop() self.progressBar.setValue(self.progressBar.value()+20) self.progressBar.setFormat("当前人数:{}/总人数%m".format(self.progressBar.value()-self.progressBar.minimum())) timer.timeout.connect(timer_func) #使用信号 timer.start(1000) #每隔1s #信号 self.progressBar.valueChanged.connect(lambda val:print(val)) if __name__ == '__main__': app =QApplication(sys.argv) window = Window() window.show() sys.exit(app.exec_())
总结:
以上就是QProgressBar ,下面是展示控件中的第四类:对话框样式的展示控件QDialog:
首先看QErrorMessage :https://www.cnblogs.com/zach0812/p/11398394.html