一、Tkinter介紹
Tkinter是Python中內置的一個GUI工具包。它提供了豐富的GUI構件(如按鍵、標籤、框架等)以及布局管理器,並且可以實現跨平台的GUI應用程序。 Tkinter 在 Python 3.x 中的包名為 "tkinter",在 Python 2.x 中的包名為 "Tkinter",雖然包名大小寫不同,但使用方法基本相同。
importtkinterastk root=tk.Tk() root.title('MyFirstGUI') root.mainloop()
二、Checkbox介紹
Checkbox即複選框,是一種常用的多選控制項,可以用來讓用戶從多個選項中選擇一個或多個。在Tkinter中,可以使用Checkbutton類來創建Checkbox。Checkbutton類的構造函數有如下參數:
text:Checkbox的標籤文本
variable:與Checkbox關聯的Python變數
onvalue:當Checkbox被選中時,變數的值
offvalue:當Checkbox未被選中時,變數的值
importtkinterastk root=tk.Tk() root.title('CheckboxDemo') var1=tk.IntVar() c1=tk.Checkbutton(root,text='選項1',variable=var1,onvalue=1,offvalue=0) c1.pack() var2=tk.IntVar() c2=tk.Checkbutton(root,text='選項2',variable=var2,onvalue=1,offvalue=0) c2.pack() root.mainloop()
三、Tkinter實現多選功能
在Tkinter中,通過將多個Checkbox關聯到同一個Python變數,來實現多選功能。當Checkbox被選中時,變數的值改變,可以通過該變數的值來獲得哪些選項被選中了。
importtkinterastk root=tk.Tk() root.title('Multi-checkboxDemo') var1=tk.IntVar() c1=tk.Checkbutton(root,text='選項1',variable=var1,onvalue=1,offvalue=0) c1.pack() var2=tk.IntVar() c2=tk.Checkbutton(root,text='選項2',variable=var2,onvalue=1,offvalue=0) c2.pack() var3=tk.IntVar() c3=tk.Checkbutton(root,text='選項3',variable=var3,onvalue=1,offvalue=0) c3.pack() defget_selected(): selected=[] ifvar1.get()==1: selected.append('選項1') ifvar2.get()==1: selected.append('選項2') ifvar3.get()==1: selected.append('選項3') print('選中的選項:',selected) btn=tk.Button(root,text='確定',command=get_selected) btn.pack() root.mainloop()
四、複選框布局
在Tkinter中,可以使用不同的布局管理器來實現複選框的布局。常用的布局管理器有Pack、Grid和Place。其用法分別如下:
Pack:按順序依次排列,有水平和垂直兩種方向
Grid:按矩陣方式排列
Place:通過絕對坐標實現布局
importtkinterastk root=tk.Tk() root.title('CheckboxLayoutDemo') var1=tk.IntVar() c1=tk.Checkbutton(root,text='選項1',variable=var1,onvalue=1,offvalue=0) c1.pack(side='left') var2=tk.IntVar() c2=tk.Checkbutton(root,text='選項2',variable=var2,onvalue=1,offvalue=0) c2.pack(side='left') var3=tk.IntVar() c3=tk.Checkbutton(root,text='選項3',variable=var3,onvalue=1,offvalue=0) c3.pack(side='left') root.mainloop()
五、總結
複選框在實現多選功能時十分有用,而在Tkinter中,Checkbutton類可以方便地創建複選框。通過將多個Checkbox關聯到同一個Python變數,就可以實現多選功能。同時,不同的布局管理器可以實現複選框的不同布局。
原創文章,作者:小藍,如若轉載,請註明出處:https://www.506064.com/zh-tw/n/198717.html