如何将PyQt小部件放入数组中

时间:2019-04-30 14:56:08

标签: python pyqt

我正在尝试将小部件放入数组中,例如,我需要在数组中添加一些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 ..不起作用)。

1 个答案:

答案 0 :(得分: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