#!/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;