tkinter中checkbutton多選框控件和variable用法(六)


checkbutton控件

簡單的實現多選:

復制代碼
 1 import tkinter  2  3 wuya = tkinter.Tk()  4 wuya.title("wuya")  5 wuya.geometry("300x200+10+20")  6  7 # 創建四個多選框  8 cb1 = tkinter.Checkbutton(wuya,text='周傑倫')  9 cb1.pack() 10 cb2 = tkinter.Checkbutton(wuya,text='周星馳') 11 cb2.pack() 12 cb3 = tkinter.Checkbutton(wuya,text='愛舞涯') 13 cb3.pack() 14 cb4 = tkinter.Checkbutton(wuya,text='蔡依林') 15 cb4.pack() 16 17 wuya.mainloop()
復制代碼

tkinter中如果不設置對齊方式,默認是居中的,如果要設置可以在pack()中加參數:cb1.pack(side='left')

結果為:

 

結合之前學的加lable和打印功能:

復制代碼
 1 import tkinter  2  3 wuya = tkinter.Tk()  4 wuya.title("wuya")  5 wuya.geometry("300x200+10+20")  6  7 # 加標簽  8 lb = tkinter.Label(wuya,text='請選擇自己喜歡的名星(多選):',fg='blue')  9 lb.pack() 10 11 12 13 # 定義執行選擇框后的函數 14 def func(): 15 msg = '' 16 if h1.get() == True: # 因為h1創建時是bool的運算,選中為真,不選為假 17 msg += "周傑倫\n" 18 if h2.get() == True: 19 msg += "周星馳\n" 20 if h3.get() == True: 21 msg += "愛舞涯\n" 22 if h4.get() == True: 23 msg += "蔡依林\n" 24 25 text.delete(0.0,tkinter.END) # 清除text中的內容,0.0表示從第一行第一個字開始清除,end表示清除到最后結束 26 text.insert('insert',msg) 27 28 # 創建四個多選框 29 h1 = tkinter.BooleanVar() # 設置選擇框對象 30 cb1 = tkinter.Checkbutton(wuya,text='周傑倫',variable=h1,command=func) 31 cb1.pack() 32 33 h2 = tkinter.BooleanVar() 34 cb2 = tkinter.Checkbutton(wuya,text='周星馳',variable=h2,command=func) 35 cb2.pack() 36 37 h3 = tkinter.BooleanVar() 38 cb3 = tkinter.Checkbutton(wuya,text='愛舞涯',variable=h3,command=func) 39 cb3.pack() 40 41 h4 = tkinter.BooleanVar() 42 cb4 = tkinter.Checkbutton(wuya,text='蔡依林',variable=h4,command=func) 43 cb4.pack() 44 # side='left'表示左對齊 45 46 # 創建一個文本框 47 text = tkinter.Text(wuya,width=30,height=10) 48 text.pack() 49 50 51 wuya.mainloop()
復制代碼

結果為:

 

 

variable用法

variable主要用於傳參和綁定變量。主要參數有:variabletextvariableonvalueoffvaluevalue

他是雙向綁定的,也就是說如果該變量發生變化,隨之綁定的控件也會變化,與他保持一致

常用的variable變量有:

  x = StringVar()  保存一個 string 類型變量, 默認值為""

  x = IntVar()  保存一個整型變量, 默認值為0

  x = DoubleVar()  保存一個浮點型變量,默認值為0.0

  x = BooleanVar()  保存一個布爾型變量,返回值為0表示假,1表示真

對他的操作主要有兩個:

  設置他的值,用set()方法,即:x.set()

  得到他的值,用get()方法,即:x.get()


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM