Как получить текущее значение ProgressBar в pyQt5? - PullRequest
0 голосов
/ 07 июня 2019

Я учусь Pyqt5. Проблема в том, что я хочу получить значение индикатора выполнения в pyqt5

Я пытался использовать self.progressBar.getValue() или self.progressBar.getInt() Ни один из них не работал

Фактический код немного большой. Но не берите в голову. Пожалуйста, помогите

Мне просто нужен синтаксис для получения текущего значения из индикатора выполнения, то есть: от 1 до 100

Ответы [ 2 ]

2 голосов
/ 07 июня 2019

Согласно их документации , метод для получения значения просто value(), поэтому в вашем случае это будет self.progressBar.value()

0 голосов
/ 07 июня 2019

Я согласен с @ dustin-we, вот минимальный пример кода:

import sys
import time

from PyQt5.QtWidgets import (QApplication, QDialog,
                             QProgressBar, QPushButton)

TIME_LIMIT = 100


class Actions(QDialog):
    """
    Simple dialog that consists of a Progress Bar and a Button.
    Clicking on the button results in the start of a timer and
    updates the progress bar.
    """

    def __init__(self):
        super().__init__()
        self.initUI()

    def initUI(self):
        self.setWindowTitle('Progress Bar')
        self.progress = QProgressBar(self)
        self.progress.setGeometry(0, 0, 300, 25)
        self.progress.setMaximum(100)
        self.button = QPushButton('Start', self)
        self.button.move(0, 30)
        self.show()

        self.button.clicked.connect(self.onButtonClick)

    def onButtonClick(self):
        count = 0
        while count < TIME_LIMIT:
            count += 1
            time.sleep(0.01)
            self.progress.setValue(count)

            # !! Here is the command you need !!
            print(self.progress.value())


if __name__ == "__main__":
    app = QApplication(sys.argv)
    window = Actions()
    sys.exit(app.exec_())
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...