-1
我不是有經驗的程序員,我無法找到解決這個問題的方法。 我想用他們的按鈕描述創建一個長的子程序列表,並使用下面的代碼來創建按鈕。但是這樣的代碼總是將最後一個子程序從列表中分配給所有按鈕。Tkinter按鈕命令循環執行總是最後一個命令
self.row=Frame(root)
self.programs=(('description1',p1),('description2',p2))
for self.program in self.programs:
self.b= Button(self.row, text=self.program[0], command=lambda event="":self.program[1]())
self.row.pack(side=TOP, fill=X, padx=5, pady=5)
self.b.pack(side=LEFT, padx=5, pady=5)
它運行良好,除了所有按鈕都在執行p2。如何解決這個問題?
謝謝。
你真棒! – 2014-12-02 11:24:21
@KetiwSimplistik,歡迎來到堆棧溢出!如果這對你有幫助,你可以通過[接受答案](http://meta.stackoverflow.com/a/5235)告訴社區。 – falsetru 2014-12-02 11:24:44