如何将PyQt小部件放在一个数组中

问题描述 投票:-1回答:1

我正在尝试将小部件放在一个数组中,例如我需要在我的数组中使用一些QProgressBar。 (我得到了QProgressBar课程)。

之后,我将需要这些QProgressBar来修改它们的值,依此类推使用我的数组。例如array[2].show()甚至没有工作。

DataBar = []
BarrePositionX = 1000
BarrePositionY= 590
for NombreDeShaker in range(0, nb_shaker):
    for NbDeBar in range(0, 4):
        DataBar.append(BarPourcentage(self))
        DataBar.move(BarrePositionX, BarrePositionY)
        DataBar.show()
        BarrePositionY += 22
    BarrePositionY=590
    BarrePositionX += 150

如果我只使用move()show()只用DataBar[0],它可以正常工作,但仅适用于0(而1,2,3 ..不起作用)。

python pyqt
1个回答
0
投票

你得到你的列表DataBar和你的小部件混在一起。

在循环中,创建一个小部件,应用您需要的所有更改(moveshow)。然后,将其添加到您的列表中:

        DataBar = []
        BarrePositionX = 1000
        BarrePositionY= 590
        for NombreDeShaker in range(0, nb_shaker):
            for NbDeBar in range(0, 4):
                bar = BarPourcentage(self)
                bar.move(BarrePositionX, BarrePositionY)
                DataBar.append(bar)
                BarrePositionY += 22
            BarrePositionY=590
            BarrePositionX += 150
© www.soinside.com 2019 - 2024. All rights reserved.