我有一本字典。
我需要創建一個鍵名按鈕和clicked
插槽基於價值:PyQt - 從字典中創建按鈕
dic = {'a':'111', 'b':'222', 'c':'333'}
for key in dic:
btn = QPushButton(key, self)
btn.clicked.connect(lambda: doit(dic[key]))
vbox.addWidget(btn)
我有正確的名稱所有按鈕。最後創建的按鈕的行爲是正確的。
但所有其他按鈕'clicked
插槽也連接到最後創建的按鈕do('333')
。
如何讓所有按鈕的行爲不同?
怎麼會呢?這是如何與'for'連接的?這個竅門有沒有名字?如果沒有,則不需要這種愚蠢的功能。我認爲'lambda:'解決了所有這些問題。但情況變得更糟。 – Qiao 2011-05-21 21:42:16