use Tk; use Tk::MatchEntry; @dataa = [ qw/Abberley Abberton Abbotsley Accrington/]; @datab = [ qw/Babraham Bacton Bexhill Bradfield/]; my $mw = MainWindow->new(-title => "i wish this would work",); $mw->geometry("200x70+0+0"); my $label = $mw->label("type somthing in the box"); my $me = $mw->MatchEntry( -variable => \$place, -choices => @dataa, -autosort => 0, -fixedwidth => 0, -ignorecase => 1, -maxheight => 10, -listwidth => 240, -entercmd => sub {#do some stuff }, -onecmd => sub {#do some stuff then $me->configure('choices' => @datab); }, )->pack(-side => 'left'); Tk::MainLoop();