Posted to tcl by bleb at Tue Nov 07 18:45:11 GMT 2023view pretty
#!/usr/bin/wish proc Scrolled_Text { f args } { frame $f eval {text $f.text -wrap none \ -xscrollcommand [list $f.xscroll set] \ -yscrollcommand [list $f.yscroll set]} $args scrollbar $f.xscroll -orient horizontal \ -command [list $f.text xview] scrollbar $f.yscroll -orient vertical \ -command [list $f.text yview] grid $f.text $f.yscroll -sticky news grid $f.xscroll -sticky news grid rowconfigure $f 0 -weight 1 grid columnconfigure $f 0 -weight 1 return $f.text } set t [Scrolled_Text .f -width 40 -height 8] pack .f -side top -fill both -expand true set l [list a b c] foreach i {0 1 2} { puts "i: [lindex $l $i]" $t tag bind link[lindex $l $i] <1> {$t insert end "CLICK: [lindex $l $i]\n"} $t insert end "-> $i <-\n" link[lindex $l $i] }