📄 listbox.test
字号:
update wm deiconify . set x [getsize .] .l configure -setgrid 1 update list $x [getsize .]} {115x328 15x20}test listbox-4.7 {ConfigureListbox procedure} { catch {destroy .l} wm withdraw . listbox .l -font $fixed -width 30 -height 20 -setgrid 1 wm geom . +0+0 pack .l update wm deiconify . set result [getsize .] wm geom . 26x15 update lappend result [getsize .] .l configure -setgrid 1 update lappend result [getsize .]} {30x20 26x15 26x15}wm geom . {}catch {destroy .l}resetGridInfotest listbox-4.8 {ConfigureListbox procedure} { catch {destroy .l} listbox .l -width 15 -height 20 -xscrollcommand "record x" \ -yscrollcommand "record y" pack .l update .l configure -fg black set log {} update set log} {{y 0 1} {x 0 1}}# No tests for DisplayListbox: I don't know how to test this procedure.test listbox-5.1 {ListboxComputeGeometry procedure} {fonts} { catch {destroy .l} listbox .l -font $fixed -width 15 -height 20 pack .l list [winfo reqwidth .l] [winfo reqheight .l]} {115 328}test listbox-5.2 {ListboxComputeGeometry procedure} {fonts} { catch {destroy .l} listbox .l -font $fixed -width 0 -height 10 pack .l update list [winfo reqwidth .l] [winfo reqheight .l]} {17 168}test listbox-5.3 {ListboxComputeGeometry procedure} {fonts} { catch {destroy .l} listbox .l -font $fixed -width 0 -height 10 -bd 3 .l insert 0 Short "Really much longer" Longer pack .l update list [winfo reqwidth .l] [winfo reqheight .l]} {138 170}test listbox-5.4 {ListboxComputeGeometry procedure} {fonts} { catch {destroy .l} listbox .l -font $fixed -width 10 -height 0 pack .l update list [winfo reqwidth .l] [winfo reqheight .l]} {80 24}test listbox-5.5 {ListboxComputeGeometry procedure} {fonts} { catch {destroy .l} listbox .l -font $fixed -width 10 -height 0 -highlightthickness 0 .l insert 0 Short "Really much longer" Longer pack .l update list [winfo reqwidth .l] [winfo reqheight .l]} {76 52}test listbox-5.6 {ListboxComputeGeometry procedure} { # If "0" in selected font had 0 width, caused divide-by-zero error. catch {destroy .l} pack [listbox .l -font {{open look glyph}}] update} {} catch {destroy .l}listbox .l -height 2 -xscrollcommand "record x" -yscrollcommand "record y"pack .lupdatetest listbox-6.1 {InsertEls procedure} { .l delete 0 end .l insert end a b c d .l insert 5 x y z .l insert 2 A .l insert 0 q r s .l get 0 end} {q r s a b A c d x y z}test listbox-6.2 {InsertEls procedure} { .l delete 0 end .l insert 0 a b c d e f g h i j .l selection anchor 2 .l insert 2 A B .l index anchor} {4}test listbox-6.3 {InsertEls procedure} { .l delete 0 end .l insert 0 a b c d e f g h i j .l selection anchor 2 .l insert 3 A B .l index anchor} {2}test listbox-6.4 {InsertEls procedure} { .l delete 0 end .l insert 0 a b c d e f g h i j .l yview 3 update .l insert 2 A B .l index @0,0} {5}test listbox-6.5 {InsertEls procedure} { .l delete 0 end .l insert 0 a b c d e f g h i j .l yview 3 update .l insert 3 A B .l index @0,0} {3}test listbox-6.6 {InsertEls procedure} { .l delete 0 end .l insert 0 a b c d e f g h i j .l activate 5 .l insert 5 A B .l index active} {7}test listbox-6.7 {InsertEls procedure} { .l delete 0 end .l insert 0 a b c d e f g h i j .l activate 5 .l insert 6 A B .l index active} {5}test listbox-6.8 {InsertEls procedure} { .l delete 0 end .l insert 0 a b c .l index active} {2}test listbox-6.9 {InsertEls procedure} { .l delete 0 end .l insert 0 .l index active} {0}test listbox-6.10 {InsertEls procedure} { .l delete 0 end .l insert 0 a b "two words" c d e f g h i j update set log {} .l insert 0 word update set log} {{y 0 0.166667}}test listbox-6.11 {InsertEls procedure} { .l delete 0 end .l insert 0 a b "two words" c d e f g h i j update set log {} .l insert 0 "much longer entry" update set log} {{y 0 0.166667} {x 0 1}}test listbox-6.12 {InsertEls procedure} {fonts} { catch {destroy .l2} listbox .l2 -width 0 -height 0 pack .l2 -side top .l2 insert 0 a b "two words" c d set x {} lappend x [winfo reqwidth .l2] [winfo reqheight .l2] .l2 insert 0 "much longer entry" lappend x [winfo reqwidth .l2] [winfo reqheight .l2]} {80 93 122 110}test listbox-7.1 {DeleteEls procedure} { .l delete 0 end .l insert 0 a b c d e f g h i j .l selection set 1 6 .l delete 4 3 list [.l size] [selection get]} {10 {bcdefg}}test listbox-7.2 {DeleteEls procedure} { .l delete 0 end .l insert 0 a b c d e f g h i j .l selection set 3 6 .l delete 4 4 list [.l size] [.l get 4] [.l curselection]} {9 f {3 4 5}}test listbox-7.3 {DeleteEls procedure} { .l delete 0 end .l insert 0 a b c d e f g h i j .l delete 0 3 list [.l size] [.l get 0] [.l get 1]} {6 e f}test listbox-7.4 {DeleteEls procedure} { .l delete 0 end .l insert 0 a b c d e f g h i j .l delete 8 1000 list [.l size] [.l get 7]} {8 h}test listbox-7.5 {DeleteEls procedure} { .l delete 0 end .l insert 0 a b c d e f g h i j .l selection anchor 2 .l delete 0 1 .l index anchor} {0}test listbox-7.6 {DeleteEls procedure} { .l delete 0 end .l insert 0 a b c d e f g h i j .l selection anchor 2 .l delete 2 .l index anchor} {2}test listbox-7.7 {DeleteEls procedure} { .l delete 0 end .l insert 0 a b c d e f g h i j .l selection anchor 4 .l delete 2 5 .l index anchor} {2}test listbox-7.8 {DeleteEls procedure} { .l delete 0 end .l insert 0 a b c d e f g h i j .l selection anchor 3 .l delete 4 5 .l index anchor} {3}test listbox-7.9 {DeleteEls procedure} { .l delete 0 end .l insert 0 a b c d e f g h i j .l yview 3 update .l delete 1 2 .l index @0,0} {1}test listbox-7.10 {DeleteEls procedure} { .l delete 0 end .l insert 0 a b c d e f g h i j .l yview 3 update .l delete 3 4 .l index @0,0} {3}test listbox-7.11 {DeleteEls procedure} { .l delete 0 end .l insert 0 a b c d e f g h i j .l yview 3 update .l delete 4 6 .l index @0,0} {3}test listbox-7.12 {DeleteEls procedure} { .l delete 0 end .l insert 0 a b c d e f g h i j .l yview 3 update .l delete 3 end .l index @0,0} {1}test listbox-7.13 {DeleteEls procedure, updating view with partial last line} { mkPartial .partial.l yview 8 update .partial.l delete 10 13 .partial.l index @0,0} {7}test listbox-7.14 {DeleteEls procedure} { .l delete 0 end .l insert 0 a b c d e f g h i j .l activate 6 .l delete 3 4 .l index active} {4}test listbox-7.15 {DeleteEls procedure} { .l delete 0 end .l insert 0 a b c d e f g h i j .l activate 6 .l delete 5 7 .l index active} {5}test listbox-7.16 {DeleteEls procedure} { .l delete 0 end .l insert 0 a b c d e f g h i j .l activate 6 .l delete 5 end .l index active} {4}test listbox-7.17 {DeleteEls procedure} { .l delete 0 end .l insert 0 a b c d e f g h i j .l activate 6 .l delete 0 end .l index active} {0}test listbox-7.18 {DeleteEls procedure} { .l delete 0 end .l insert 0 a b c "two words" d e f g h i j update set log {} .l delete 4 6 update set log} {{y 0 0.25}}test listbox-7.19 {DeleteEls procedure} { .l delete 0 end .l insert 0 a b c "two words" d e f g h i j update set log {} .l delete 3 update set log} {{y 0 0.2} {x 0 1}}test listbox-7.20 {DeleteEls procedure} {fonts} { catch {destroy .l2} listbox .l2 -width 0 -height 0 pack .l2 -side top .l2 insert 0 a b "two words" c d e f g set x {} lappend x [winfo reqwidth .l2] [winfo reqheight .l2] .l2 delete 2 4 lappend x [winfo reqwidth .l2] [winfo reqheight .l2]} {80 144 17 93}catch {destroy .l2}test listbox-8.1 {ListboxEventProc procedure} {fonts} { catch {destroy .l} listbox .l -setgrid 1 pack .l update set x [getsize .] destroy .l list $x [getsize .] [winfo exists .l] [info command .l]} {20x10 150x178 0 {}}resetGridInfotest listbox-8.2 {ListboxEventProc procedure} {fonts} { catch {destroy .l} listbox .l -height 5 -width 10 .l insert 0 a b c "A string that is very very long" d e f g h i j k pack .l update place .l -width 50 -height 80 update list [.l xview] [.l yview]} {{0 0.222222} {0 0.333333}}test listbox-8.3 {ListboxEventProc procedure} { eval destroy [winfo children .] listbox .l1 -bg #543210 rename .l1 .l2 set x {} lappend x [winfo children .] lappend x [.l2 cget -bg] destroy .l1 lappend x [info command .l*] [winfo children .]} {.l1 #543210 {} {}}test listbox-9.1 {ListboxCmdDeletedProc procedure} { eval destroy [winfo children .] listbox .l1 rename .l1 {} list [info command .l*] [winfo children .]} {{} {}}test listbox-9.2 {ListboxCmdDeletedProc procedure, disabling -setgrid} fonts { catch {destroy .top} toplevel .top wm geom .top +0+0 listbox .top.l -setgrid 1 -width 20 -height 10 pack .top.l update set x [wm geometry .top] rename .top.l {} update lappend x [wm geometry .top] destroy .top set x} {20x10+0+0 150x178+0+0}catch {destroy .l}listbox .lpack .l.l delete 0 end.l insert 0 el0 el1 el2 el3 el4 el5 el6 el7 el8 el9 el10 el11test listbox-10.1 {GetListboxIndex procedure} { .l activate 3 list [.l activate 3; .l index active] [.l activate 6; .l index active]} {3 6}test listbox-10.2 {GetListboxIndex procedure} { .l selection anchor 2 .l index anchor} 2test listbox-10.3 {GetListboxIndex procedure} { .l insert end A B C D E .l selection anchor end .l delete 12 end list [.l index anchor] [.l index end]} {12 12}test listbox-10.4 {GetListboxIndex procedure} { list [catch {.l index a} msg] $msg} {1 {bad listbox index "a": must be active, anchor, end, @x,y, or a number}}test listbox-10.5 {GetListboxIndex procedure} { .l index end} {12}test listbox-10.6 {GetListboxIndex procedure} { .l get end
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -