TK選擇Widget


選擇視窗小部件用於選擇在一個Tk應用程式不同的選項。可用的選擇視窗小部件的列表,如下所示。

1 Radiobutton 視窗小部件具有一組開/關按鈕和標籤,其中一個可被選擇
2 Checkbutton 視窗小部件具有一組開/關按鈕和標籤,其中許多可被選擇。
3 Menu 視窗小部件為選單項充當支架。
4 Listbox 視窗小部件,顯示一個或多個單元格,其中的列表可以被選擇。

一個簡單的Tk選擇部件使用的範例如下所示。

#!/usr/bin/wish

grid [frame .gender ]
grid [label .label1  -text "Male" -textvariable myLabel1 ] 
grid [radiobutton .gender.maleBtn -text "Male"   -variable gender -value "Male" -command "set  myLabel1 Male"] -row 1 -column 2
grid [radiobutton .gender.femaleBtn -text "Female" -variable gender -value "Female" -command "set  myLabel1 Female"] -row 1 -column 3
.gender.maleBtn select
grid [label .myLabel2  -text "Range 1 not selected" -textvariable myLabelValue2 ] 
grid [checkbutton .chk1 -text "Range 1" -variable occupied1 -command {if {$occupied1 } {
   set myLabelValue2 {Range 1 selected}
} else {
   set myLabelValue2 {Range 1 not selected}
} }]
proc setLabel {text} {
    .label configure -text $text 
}

當我們執行上面的程式,會得到下面的輸出。

Selection Widget Example