in reply to Coloring Tk Listbox

Actually, with the most recent Tk releases 804.* it is possible to configure the following options independantly for each list item: background, foreground, selectbackground, and selectforeground.

So long as you were using one of the newer releases, you could do something like this:

use Tk; my $mw = MainWindow->new; my @colors = qw(red orange yellow green blue purple); my $listbox = $mw->Listbox( -height => 0, -foreground => 'white' )->pack; foreach my $c (@colors) { $listbox->insert('end', $c); $listbox->itemconfigure('end', -background => $c); } MainLoop;

As mentioned previously, HList can also support this functionality... and more besides. The tradeoff is that it's slightly more complex to configure.

Tk::TextList will also provide this functionality, and more

As a side note: It appears that there is a memory leak with Tk::Listbox in the most recent releases, so take that into consideration.

Rob

Replies are listed 'Best First'.
Re^2: Coloring Tk Listbox
by vessko (Initiate) on Aug 17, 2007 at 00:07 UTC
    I am a kinda novice in Perl Tk so I will REALLY appreciate a working example of changing the color of a hierarchical item in HList. Let's say I want to display dir tree and dynamically gray out empty directories. Thanx! vess