我願做以下的(只是一個例子,真正的代碼有更多的菜單和更多add_command的):減少menu.add_command()雜波/重複線
editmenu.add_command(label="Cut",state="disabled")
editmenu.add_command(label="Copy",state="disabled")
editmenu.add_command(label="Paste",state="disabled")
editmenu.add_command(label="Delete",state="disabled")
但在較少的線路,其實,如果可能的話,只需一行。我的菜單佔用了大量的空間,並希望減少混亂。另外,我的程序員看到了一堆類似的線條,並且覺得必須有一種方法來減少它們。
我試過下面的代碼無濟於事;我明顯得到一個名稱錯誤,因爲標籤和狀態沒有定義...
for labeldic in [{label:"Cut"},{label:"Copy"},{label:"Paste"},{label:"Delete"}]: editmenu.add_command(labeldic+{state:"disabled"})
在此先感謝您的任何建議!
非常好,非常感謝很詳盡的解釋:) – Symon 2011-04-22 17:50:37
+1的替代建議。 「有標籤的」解決方案很難看,也很難讀懂 - 完全否定了通過「消除混亂」獲得的任何東西。除了對性能敏感最多的情況外,應儘量使代碼儘可能易讀。 – 2011-04-23 13:45:38