Tcl/Tk 烹调书 - 使用画布


Part-II - 第 1 步: 建立一个画布,一个录入组件和两个按钮组件。

在这一步中包含的这个脚本生成一个用户界面如下:

代码是自明的。注意把短的变量名赋予长的组件名是有用的(例如,把 w 给 .f.sub.c)。

#!/usr/bin/wish -f
global countries is1 sc
wm title . "Eu Tool V0.0"
wm minsize . 50 50

frame .f -bg grey -bd 2;# to hold canvas and scrollbars
pack .f
frame .f.sub  -bg red -bd 2 ;# to hold canvas
pack .f.sub -in .f 
canvas .f.sub.c -relief sunken -width 15c -height 15c 
        

pack .f.sub.c -in .f.sub -side left -fill y -padx 2
set w .f.sub.c

frame .info
pack .info
frame .info.sub1
pack .info.sub1 -padx 4 -pady 4 -ipadx 4 -ipady 4
set is1 .info.sub1
label $is1.labcountry -text "Country" -justify right
entry $is1.country   -relief sunken -textvariable sc 

pack $is1.labcountry $is1.country -side left -padx 4 -pady 3 -ipadx 2 -ipady 2
bind $is1.country <Return> {highLightCountry $w $sc}

#
# buttons
#
frame .b -bg grey 
pack .b -fill x

button .b.quit -text Quit -command {exit 0}
button .b.clear -text Clear -command {clearCanvas .f.sub.c}

pack .b.quit .b.clear -side right -padx 4 -pady 4