QLabel.setText() 不起作用?

0 投票
1 回答
3092 浏览
提问于 2025-04-17 02:17

我这几天一直在尝试让PySide中的QLabel.setText工作,但一直没有成功。

我有以下这段代码(简化版):

def GUI(self):
    self.data1=QtGui.QLabel()
    self.data2=QtGui.QLCDNumber()
    self.lcdTimer=QtGui.QLCDNumber()

def tick(time, self):
    self.lcdTimer.display(timetodisplay)  ## this one works
    self.data1.setText(somdatafromlist1)  ## this one not
    self.data2.display(somedatafromlist2) ## this one not

那么,为什么我会收到这样的错误:

self.data2.display(somedatafromlist2)
AttributeError: 'PySide.QtGui.QImage' object has no attribute 'display'
self.data1.setText(somedatafromlist1)
TypeError: setText expected 2 arguments, got 1

而且为什么lcdTimer.display()能正常工作,但其他的却不行。
.setText的第二个参数需要什么呢?

问题应该不在somedatafromlist1somedatafromlist2上。

我已经尝试检查self.lcdTimer和self.data2,它们几乎是一样的。

1 个回答

0

搞定了。问题是我在几百行后还有其他对象(ImageQt),它们的名字是 self.data1self.data2。其实我代码里的 def tick(time, self): 应该是 def tick(self, time):

撰写回答