我正在尝试将列表中的类对象作为QWidget
添加到QSplitter
。
这是代码:
class Windows(QMainWindow):
list_1 = []
def __init__(self):
#Some stuff in here
self.splitter = QSplitter(Qt.Vertical)
def methodA(self):
plot = Plot()
Windows.list_1.append(plot)
self.splitter.addwidget(???) #Here is where i want to put the specific class object
#from the list
class Plot():
#this is a Matplotlib figure
首先,我调用类对象plot
并在推送组合键时将其追加到list_1
,然后我需要在列表中添加该特定对象QSplitter
1}}使用addWidget
。
我该怎么做?希望你能帮帮我。
我需要这样做,以便从列表中识别对象,所以稍后我可以创建另一种方法从分割器中删除该对象。
答案 0 :(得分:2)
由于您已经有了要添加到QSplitter的对象的引用,因此您无需将其从列表中删除。
def methodA(self):
plot = Plot()
Windows.list_1.append(plot)
self.splitter.addwidget(plot)
如果您没有对窗口小部件的引用,但想要最近添加到列表中的项目,则可以使用否定列表索引 -
def methodA(self):
plot = Plot()
Windows.list_1.append(plot)
self.splitter.addwidget(Windows.list_1[-1])