Tk::PathEntry::Dialog ist wie Tk::PathEntry ein Entry-Widget mit Auto-Complete-Funktion. Allerdings in Form eines Dialogs, d.h. ein Fenster poppt auf und zeigt das PathEntry an. Mit Hilfe der Option as_default
kann dann sogar getOpenFile überschrieben werden. An Stelle des erwarteten Dialogs erscheint dann das PathEntry. Man muss es allerdings nicht so machen, der Dialog kann auch als ganz normales Widget verwendet werden.
#!perl
use strict;
use warnings;
use utf8;
use Tk;
use Tk::PathEntry::Dialog qw(as_default);
my $filename = '';
my $mw = MainWindow->new(
-padx => 3,
-pady => 3,
);
$mw->Label(
-text => 'Ausgewählte Datei:',
)->pack;
$mw->Label(
-textvariable => \$filename,
)->pack;
$mw->Button(
-text => 'Datei auswählen...',
-command => sub{
$filename = $mw->getOpenFile;
},
)->pack;
$mw->MainLoop;
exit(0);