0
好的,这可能是重复的,但由于我无法从类似的问题中得到任何答案,所以这里是我的:我正在研究一个小型的PyQt4程序,可以在QLineEdit中输入歌曲的名称,然后在其下面添加一个QLabel。我需要在这些标签中的每一个旁边都有一个按钮,用于在单击时删除标签。相关代码:在Python/PyQt4中动态调整实例
def Add(self):
self.rf= QtGui.QLabel(self.le1.text(),self)
self.rf.move(45,30)
self.rf.resize(450,30)
self.rf.show()
self.x = QtGui.QPushButton("X",self)
self.x.move(10,30)
self.x.resize(30,30)
self.x.show()
self.x.clicked.connect(self.Del)
def Del(self):
self.rf.close()
self.x.close()
现在,我不理解的是如何,我可以单击该按钮时,不同的实例分配给每个这些动态添加Qlabels,为了删除特定的一个。
我最好的想法是创建一个变量,其中包含一个随每个添加的QLabel而变化的数字,例如var = rf + str(num)和num = 0,然后为每个QLabel添加1到num,然后使用getattr为实例,所以getattr(self,var)= Qtgui.QLabel(...),不幸的是,这给我一个错误,我无法将该值赋给函数。我不能创建一本字典,因为我必须为此创建不同的实例。
任何想法将不胜感激,非常感谢。