我有一个函数,它应该对一个字典进行排序并将结果打印在一个QTextEdit框中 - 在gui窗口中显示“ADtext”。
示例dict:
lunch = {5: "14:00-16:00",27: "12:00-13:00", 13: "12:00-13:00"}
功能:
def example(self):
keys= list(lunch.keys())
keys.sort()
for key in keys:
self.ADtext.setText("({} => {})".format(key, lunch[key]))
但是在gui QTextEdit - “ADtext”框中,只显示其中一对(始终相同)。
如果我在cmd中打印结果(不在QTextEdit框中),该函数可以正常工作:
print ("({} => {})".format(key, lunch[key]))
你必须使用append()
,因为setText()
删除了以前的文本:
def example(self):
self.ADtext.clear() # clean the previous text
keys= list(lunch.keys())
keys.sort()
for key in keys:
self.ADtext.append("({} => {})".format(key, lunch[key]))