GPS: This is a quick proc I came up with for my
Grindweb project, which paints the background of a
listbox in alternating colors.
lvirden was asking about how to do such a thing (probably from the recent discussion of theme support in Tk). So, here's a toy for everybody.
#Copyright 2003 George Peter Staplin
#You may use this under the same terms as Tcl.
proc alternate.listbox.colors {listWin colList} {
if {![winfo exists $listWin]} {
return -code error {invalid window path}
}
set listWinEnd [$listWin index end]
set colCount 0
set colListLength [llength $colList]
for {set i 0} {$i < $listWinEnd} {incr i} {
$listWin itemconfigure $i -background [lindex $colList $colCount]
incr colCount
if {$colCount >= $colListLength} {
set colCount 0
}
}
}
Use it like so:
pack [listbox .l]
.l insert end Hello World George likes programming sometimes but lately dislikes it
alternate.listbox.colors .l [list white peachpuff]