#!/usr/bin/perl use strict; use Tk; my @listbox_items = qw/frodo bilbo rabbits orcs smaug gandolf/; my $choice = &myListBox(@listbox_items); print "From top level: selection is $choice\n"; sub myListBox{ my @listbox_items = @_; my $mw = new MainWindow; $mw->geometry('400x300'); my $lb = $mw->Listbox(-selectmode => "single")->pack( ); $lb->insert('end', @listbox_items); $lb->bind(''); $mw->Button( -text => "Close Window", -command => sub { $mw->withdraw(); return $choice;})->pack; ##double click on item from listbox $lb -> bind(''=> sub { $choice = $_[0]->get($_[0]->curselection), print "in loop selection is $choice\n"; }, ); MainLoop; }