📄 button.test
字号:
.c toggle set result $value .c toggle lappend result $value .c toggle lappend result $value} {sunshine rain sunshine}test button-4.47 {ButtonWidgetCmd procedure, "toggle" option} { .c configure -onvalue xyz -offvalue abc set value xyz trace variable value w bogusTrace set result [list [catch {.c toggle} msg] $msg $errorInfo $value] trace vdelete value w bogusTrace set result} {1 {can't set "value": trace aborted} {can't set "value": trace aborted while executing".c toggle"} abc}test button-4.48 {ButtonWidgetCmd procedure, "toggle" option} { .c configure -onvalue xyz -offvalue abc set value abc trace variable value w bogusTrace set result [list [catch {.c toggle} msg] $msg $errorInfo $value] trace vdelete value w bogusTrace set result} {1 {can't set "value": trace aborted} {can't set "value": trace aborted while executing".c toggle"} xyz}test button-4.49 {ButtonWidgetCmd procedure} { list [catch {.c bad_option} msg] $msg} {1 {bad option "bad_option": must be cget, configure, deselect, flash, invoke, select, or toggle}}test button-4.50 {ButtonWidgetCmd procedure, "toggle" option} { catch {unset value}; set value(1) 1; set result [list [catch {.c toggle} msg] $msg $errorInfo] unset value; set result} {1 {can't set "value": variable is array} {can't set "value": variable is array while executing".c toggle"}}test button-5.1 {DestroyButton procedure} { image create test image1 button .b1 -image image1 button .b2 -fg #ff0000 -text "Button 2" button .b3 -state active -text "Button 3" button .b4 -disabledforeground #0000ff -state disabled -text "Button 4" checkbutton .b5 -variable x -text "Checkbutton 5" set x 1 pack .b1 .b2 .b3 .b4 .b5 update eval destroy [winfo children .]} {}test button-6.1 {ConfigureButton procedure} { catch {destroy .b1} set x From-x set y From-y button .b1 -textvariable x .b1 configure -textvariable y set x New lindex [.b1 configure -text] 4} {From-y}test button-6.2 {ConfigureButton procedure} { catch {destroy .b1} catch {unset x} checkbutton .b1 -variable x set x 1 set y 1 .b1 configure -textvariable y set x 0 .b1 toggle set y} {1}test button-6.3 {ConfigureButton procedure} { catch {destroy .b1} eval image delete [image names] image create test image1 image create test image2 button .b1 -image image1 image delete image1 .b1 configure -image image2 image names} {image2}test button-6.4 {ConfigureButton procedure} { catch {destroy .b1} button .b1 -text "Test" -state disabled list [catch {.b1 configure -state bogus} msg] $msg \ [lindex [.b1 configure -state] 4]} {1 {bad state value "bogus": must be normal, active, or disabled} normal}test button-6.5 {ConfigureButton procedure} { catch {destroy .b1} checkbutton .b1 .b1 cget -variable} {b1}test button-6.6 {ConfigureButton procedure} { catch {destroy .b1} set x 0 set y Shiny checkbutton .b1 -variable x .b1 configure -variable y -onvalue Shiny .b1 toggle set y} 0test button-6.7 {ConfigureButton procedure} { catch {destroy .b1} catch {unset x} checkbutton .b1 -variable x -offvalue Bogus set x} Bogustest button-6.8 {ConfigureButton procedure} { catch {destroy .b1} catch {unset x} radiobutton .b1 -variable x set x} {}test button-6.9 {ConfigureButton procedure} { catch {destroy .b1} catch {unset x} trace variable x w bogusTrace set result [list [catch {radiobutton .b1 -variable x} msg] $msg] trace vdelete x w bogusTrace set result} {1 {can't set "x": trace aborted}}test button-6.10 {ConfigureButton procedure} { catch {destroy .b1} list [catch {button .b1 -image bogus} msg] $msg} {1 {image "bogus" doesn't exist}}test button-6.11 {ConfigureButton procedure} { catch {destroy .b1} catch {unset x} button .b1 -textvariable x -text "Button 1" set x} {Button 1}test button-6.12 {ConfigureButton procedure} { catch {destroy .b1} set x Override button .b1 -textvariable x -text "Button 1" set x} {Override}test button-6.13 {ConfigureButton procedure} { catch {destroy .b1} catch {unset x} trace variable x w bogusTrace set result [list [catch {radiobutton .b1 -text foo -textvariable x} msg] \ $msg $x] trace vdelete x w bogusTrace set result} {1 {can't set "x": trace aborted} foo}test button-6.14 {ConfigureButton procedure} { catch {destroy .b1} button .b1 -text "Button 1" list [catch {.b1 configure -width 1i} msg] $msg $errorInfo} {1 {expected integer but got "1i"} {expected integer but got "1i" (processing -width option) invoked from within".b1 configure -width 1i"}}test button-6.15 {ConfigureButton procedure} { catch {destroy .b1} button .b1 -text "Button 1" list [catch {.b1 configure -height 0.5c} msg] $msg $errorInfo} {1 {expected integer but got "0.5c"} {expected integer but got "0.5c" (processing -height option) invoked from within".b1 configure -height 0.5c"}}test button-6.16 {ConfigureButton procedure} { catch {destroy .b1} button .b1 -bitmap questhead list [catch {.b1 configure -width abc} msg] $msg $errorInfo} {1 {bad screen distance "abc"} {bad screen distance "abc" (processing -width option) invoked from within".b1 configure -width abc"}}test button-6.17 {ConfigureButton procedure} { catch {destroy .b1} eval image delete [image names] image create test image1 button .b1 -image image1 list [catch {.b1 configure -height 0.5x} msg] $msg $errorInfo} {1 {bad screen distance "0.5x"} {bad screen distance "0.5x" (processing -height option) invoked from within".b1 configure -height 0.5x"}}test button-6.18 {ConfigureButton procedure} {nonPortable fonts} { catch {destroy .b1} button .b1 -text "Sample text" -width 10 -height 2 pack .b1 set result "[winfo reqwidth .b1] [winfo reqheight .b1]" .b1 configure -bitmap questhead lappend result [winfo reqwidth .b1] [winfo reqheight .b1]} {102 46 20 12}test button-6.19 {ConfigureButton procedure} { catch {destroy .b1} button .b1 -text "Button 1" set old [winfo reqwidth .b1] .b1 configure -text "Much longer text" set new [winfo reqwidth .b1] expr $old == $new} {0}test button-7.1 {ButtonEventProc procedure} { catch {destroy .b1} button .b1 -text "Test Button" -command { destroy .b1 set x [list [winfo exists .b1] [info commands .b1]] } .b1 invoke set x} {0 {}}test button-7.2 {ButtonEventProc procedure} { eval destroy [winfo children .] button .b1 -bg #543210 rename .b1 .b2 set x {} lappend x [winfo children .] lappend x [.b2 cget -bg] destroy .b1 lappend x [info command .b*] [winfo children .]} {.b1 #543210 {} {}}test button-8.1 {ButtonCmdDeletedProc procedure} { eval destroy [winfo children .] button .b1 rename .b1 {} list [info command .b*] [winfo children .]} {{} {}}test button-9.1 {TkInvokeButton procedure} { catch {destroy .b1} set x 0 checkbutton .b1 -variable x set result $x .b1 invoke lappend result $x .b1 invoke lappend result $x} {0 1 0}test button-9.2 {TkInvokeButton procedure} { catch {destroy .b1} set x 0 checkbutton .b1 -variable x trace variable x w bogusTrace set result [list [catch {.b1 invoke} msg] $msg $x] trace vdelete x w bogusTrace set result} {1 {can't set "x": trace aborted} 1}test button-9.3 {TkInvokeButton procedure} { catch {destroy .b1} set x 1 checkbutton .b1 -variable x trace variable x w bogusTrace set result [list [catch {.b1 invoke} msg] $msg $x] trace vdelete x w bogusTrace set result} {1 {can't set "x": trace aborted} 0}test button-9.4 {TkInvokeButton procedure} { catch {destroy .b1} set x 0 radiobutton .b1 -variable x -value red set result $x .b1 invoke lappend result $x .b1 invoke lappend result $x} {0 red red}test button-9.5 {TkInvokeButton procedure} { catch {destroy .b1} radiobutton .b1 -variable x -value red set x green trace variable x w bogusTrace set result [list [catch {.b1 invoke} msg] $msg $errorInfo $x] trace vdelete x w bogusTrace set result} {1 {can't set "x": trace aborted} {can't set "x": trace aborted while executing".b1 invoke"} red}test button-9.6 {TkInvokeButton procedure} { eval destroy [winfo children .] set result untouched button .b1 -command {set result invoked} list [catch {.b1 invoke} msg] $msg $result} {0 invoked invoked}test button-9.7 {TkInvokeButton procedure} { eval destroy [winfo children .] set result untouched set x 0 checkbutton .b1 -variable x -command {set result "invoked $x"} list [catch {.b1 invoke} msg] $msg $result} {0 {invoked 1} {invoked 1}}test button-9.8 {TkInvokeButton procedure} { eval destroy [winfo children .] set result untouched set x 0 radiobutton .b1 -variable x -value red -command {set result "invoked $x"} list [catch {.b1 invoke} msg] $msg $result} {0 {invoked red} {invoked red}}test button-10.1 {ButtonVarProc procedure} { eval destroy [winfo children .] set x 1 checkbutton .b1 -variable x unset x set result [info exists x] .b1 toggle lappend result $x set x 0 .b1 toggle lappend result $x} {0 1 1}test button-10.2 {ButtonVarProc procedure} { eval destroy [winfo children .] set x 0 checkbutton .b1 -variable x set x 44 .b1 toggle set x} {1}test button-10.3 {ButtonVarProc procedure} { eval destroy [winfo children .] set x 1 checkbutton .b1 -variable x set x 44 .b1 toggle set x} {1}test button-10.4 {ButtonVarProc procedure} { eval destroy [winfo children .] set x 0 checkbutton .b1 -variable x set x 1 .b1 toggle set x} {0}test button-10.5 {ButtonVarProc procedure} { eval destroy [winfo children .] set x 1 checkbutton .b1 -variable x set x 1 .b1 toggle set x} {0}test button-10.6 {ButtonVarProc procedure} { eval destroy [winfo children .] set x 0 checkbutton .b1 -variable x set x 0 .b1 toggle set x} {1}test button-10.7 {ButtonVarProc procedure} { eval destroy [winfo children .] set x 1 checkbutton .b1 -variable x set x 0 .b1 toggle set x} {1}test button-10.8 {ButtonVarProc procedure, can't read variable} { # This test does nothing but produce a core dump if there's a prbblem. eval destroy [winfo children .] catch {unset a} checkbutton .b1 -variable a unset a set a(32) 0 unset a} {}test button-11.1 {ButtonTextVarProc procedure} { eval destroy [winfo children .] set x Label button .b1 -textvariable x unset x set result [list $x [lindex [.b1 configure -text] 4]] set x New lappend result [lindex [.b1 configure -text] 4]} {Label Label New}test button-11.2 {ButtonTextVarProc procedure} { eval destroy [winfo children .] set x Label button .b1 -textvariable x set old [winfo reqwidth .b1] set x New set new [winfo reqwidth .b1] list [lindex [.b1 configure -text] 4] [expr $old == $new]} {New 0}test button-12.1 {ButtonImageProc procedure} { eval destroy [winfo children .] eval image delete [image names] image create test image1 label .b1 -image image1 -padx 0 -pady 0 -bd 0 pack .b1 set result "[winfo reqwidth .b1] [winfo reqheight .b1]" image1 changed 0 0 0 0 80 100 lappend result [winfo reqwidth .b1] [winfo reqheight .b1]} {30 15 80 100}eval destroy [winfo children .]set l [interp hidden]test button-13.1 {button widget vs hidden commands} { catch {destroy .b} button .b -text hello interp hide {} .b destroy .b list [winfo children .] [interp hidden]} [list {} $l]eval destroy [winfo children .]option clear
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -