Python-79-Tkinter套件-Radiobutton元件(單選)

  • Radiobutton元件(單選)
  • 請選擇你最喜歡的主食
  • 1.飯 2.麵
  • 使用者選擇後即在下方顯示
  • 您最喜歡的主食為: 使用者選的主食

 

 

先做介面

def mymsg():
    msgfood.set("您最喜歡的主食為")


import tkinter as tk

yrwin = tk.Tk()

msgfood=tk.StringVar()

foodlabel=tk.Label(yrwin,text="請選擇你最喜歡的主食")
foodlabel.pack()

ch01=tk.Radiobutton(yrwin,text="飯",value="飯")
ch01.pack()

ch02=tk.Radiobutton(yrwin,text="麵",value="麵")
ch02.pack()

msglabel=tk.Label(yrwin,textvariable=msgfood,fg="blue")
msglabel.pack()

mymsg()
yrwin.mainloop()

 

 

Radiobutton抓取值的變數名稱需使用 variable設定

例:

ch01=tk.Radiobutton(yrwin,text="飯",value="飯",variable=choosefood,command=mymsg)
ch01.pack()

抓值時,使用

choosefood.get()

預設選項:
 

ch02.select() #預設選擇(一定要設定看是預設選飯還是選麵)

 

完整程式碼:

def mymsg():
    msgfood.set("您最喜歡的主食為"+choosefood.get()) #抓值


import tkinter as tk

yrwin = tk.Tk()

choosefood=tk.StringVar() #設定動態變數為字串
msgfood=tk.StringVar() #設定動態變數為字串

foodlabel=tk.Label(yrwin,text="請選擇你最喜歡的主食")
foodlabel.pack()

ch01=tk.Radiobutton(yrwin,text="飯",value="1",variable=choosefood,command=mymsg)
ch01.pack()

ch02=tk.Radiobutton(yrwin,text="麵",value="2",variable=choosefood,command=mymsg)
ch02.pack()

msglabel=tk.Label(yrwin,textvariable=msgfood,fg="blue")
msglabel.pack()

ch02.select() #預設選擇(一定要設定看是預設選飯還是選麵)
mymsg()
yrwin.mainloop()

參考

Yiru@Studio - 關於我 - 意如