2015-12-31 69 views

回答

1

按設計,ttk組合框不支持多選。它旨在允許您從選項​​列表中選擇一個項目。

如果您需要做出多種選擇,您可以使用帶有相關菜單的menubutton,並在菜單中添加checkbuttons或radiobuttons。

下面是一個例子:

import Tkinter as tk 

class Example(tk.Frame): 
    def __init__(self, parent): 
     tk.Frame.__init__(self, parent) 

     menubutton = tk.Menubutton(self, text="Choose wisely", 
            indicatoron=True, borderwidth=1, relief="raised") 
     menu = tk.Menu(menubutton, tearoff=False) 
     menubutton.configure(menu=menu) 
     menubutton.pack(padx=10, pady=10) 

     self.choices = {} 
     for choice in ("Iron Man", "Superman", "Batman"): 
      self.choices[choice] = tk.IntVar(value=0) 
      menu.add_checkbutton(label=choice, variable=self.choices[choice], 
           onvalue=1, offvalue=0, 
           command=self.printValues) 
    def printValues(self): 
     for name, var in self.choices.items(): 
      print "%s: %s" % (name, var.get()) 

if __name__ == "__main__": 
    root = tk.Tk() 
    Example(root).pack(fill="both", expand=True) 
    root.mainloop() 
相關問題