G'day rjohn1,
I think the easiest option is to use -browsecmd instead of -command. Here's an example:
#!/usr/bin/env perl use strict; use warnings; use Tk; use Tk::HList; my $mw = MainWindow->new(); my $action_F = $mw->Frame()->pack(-side => 'bottom'); $action_F->Button(-text => 'Exit', -command => sub { exit })->pack; my $app_F = $mw->Frame()->pack(-side => 'top'); my $label_text = ''; my $label = $app_F->Label(-textvariable => \$label_text); $label->pack(-side => 'top', -fill => 'x'); my $hlist = $app_F->HList( -itemtype => 'text', -selectmode => 'single', -browsecmd => sub { $label_text = shift }, ); my @items = qw{one two three one.apple two.grapes three.apple}; $hlist->add($_, -text => uc((split /[.]/)[-1])) for @items; $hlist->pack(-side => 'top', -fill => 'both'); MainLoop;
The first argument to the -browsecmd callback will be the path: you can capture that and process it however you want. In this example, it's just displayed in the Tk::Label.
-- Ken
In reply to Re: How to bind single click to get an path of an entry in Tk::HList
by kcott
in thread How to bind single click to get an path of an entry in Tk::HList
by rjohn1
| For: | Use: | ||
| & | & | ||
| < | < | ||
| > | > | ||
| [ | [ | ||
| ] | ] |