首页 > 解决方案 > 如何使用小部件列表

问题描述

我在列表中添加了一些 QProgressBar,我需要使用该列表来设置这些 ProgressBar 的值

        self.DataBar = list()
        for Nb in range(0, 4):
            self.DataBar.append(BarPourcentage(self))
            self.DataBar[Nb].setValue(12)
            self.DataBar[Nb].show()
            print(self.DataBar[Nb].value())
        self.DataBar[2].setValue(50) #This line isn't working, it works only when Nb=0 

        class BarPourcentage(QtWidgets.QProgressBar): #My Class
            def __init__(self, parent = None):
            super(BarPourcentage, self).__init__()
            self.setParent(parent)
            self.setGeometry(200,80,130,20)

通过打印,它会打印 4 个进度条的 4 个值。我可以在我的 gui 上看到这 4 个进度条,但是当值不等于 0 时,我无法通过尝试 DataBar[Value].setValue(50) 来单独更改它们的值。错误:列表索引超出范围。

标签: pythonpyqtwidgetqprogressbar

解决方案


推荐阅读