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