Das Tk::BrowseEntry kombiniert ein Entry-Widget mit einem Drop-Down-Menu (auch Ausklappmenu genannt). Laut Dokumentation ist es eine ComboBox für Arme.
Wer etwas mehr Funktionalität benötigt, sollte sich die Tk::JComboBox anschauen.
#!perl
use strict;
use warnings;
use Tk;
use Tk::BrowseEntry;
my $mw = Tk::MainWindow->new(-width => 300, -height => 300,);
$mw->packPropagate(0);
# Specifies the variable in which the entered value is to be stored
my $var = '';
my $be = $mw->BrowseEntry(
-label => 'Label: ',
-variable => \$var,
);
$be->configure(-browsecmd => sub{ print_selected_value($be); },);
$be->insert("end", "opt1");
$be->insert("end", "opt2");
$be->insert("end", "opt3");
$be->pack();
$mw->MainLoop();
sub print_selected_value {
my $be_innen = shift;
print "You picked: ", $be_innen->Subwidget("entry")->get(), "\n";
} # /print_selected_value