Pythonでプログレスバーを使用する方法を説明する。
完成イメージ
ヨシヒコを攻撃するとHPが10ずつ減る。
コード
プログレスバーを使用する手順を示す。
- PyQt6からQProgressBarをimportする。
- QProgressBarのインスタンスを生成する。
- setValue()で初期値を設定する。
- attack_Yoshihiko(self)でヨシヒコをボコった後の値を設定する。
#!/usr/bin/env python3
import sys
from PyQt6.QtWidgets import QApplication, QWidget, \
QLabel, QPushButton, QProgressBar #1
class GuiWindow(QWidget):
def __init__(self, parent=None):
super().__init__(parent)
self.setGeometry(0, 0, 250, 150)
self.set_variables()
self.build_ui()
self.connect_signal_slot()
def set_variables(self):
self.ヨシヒコのHP = 100
def build_ui(self):
self.qlb = QLabel("ゆうしゃヨシヒコのHP " + str(self.ヨシヒコのHP), self)
self.qlb.setGeometry(25, 10, 200, 20)
self.pbar = QProgressBar(self) #2
self.pbar.setGeometry(25, 40, 200, 20)
self.pbar.setValue(self.ヨシヒコのHP) #3
self.qbp = QPushButton('ヨシヒコをこうげきする', self)
self.qbp.setGeometry(25, 80, 200, 40)
def connect_signal_slot(self):
self.qbp.clicked.connect(self.attack_Yoshihiko)
def attack_Yoshihiko(self): #4
self.ヨシヒコのHP -= 10
self.pbar.setValue(self.ヨシヒコのHP)
self.qlb.setText("ゆうしゃヨシヒコのHP " + str(self.ヨシヒコのHP))
if __name__ == '__main__':
app = QApplication(sys.argv)
window = GuiWindow()
window.show()
sys.exit(app.exec())
あとはビルドすればGUIアプリが起動する。
まとめ
Pythonでプログレスバーを使用する方法を説明した。
コメント