Tk::DialogBox - Nicht-Modaler Dialog

Tk::DialogBox ist neben Tk::Dialog ein weiteres Widget für die Anzeige von Dialogen. Der Dialog ist nicht modal, d.h. man kann mit dem anderen Fenster weiterarbeiten, während der Dialog angezeigt wird.

#!perl

=comment

dialog_box.pl
Zeigt einen einfachen Ja/Nein-Dialog.

=cut

use strict;
use warnings;
use Tk;
use Tk::DialogBox;

my $mw = tkinit(-width => 200, -height => 200);
$mw->packPropagate(0);

# Dialog-Widget erstellen
my $d = $mw->DialogBox(
	-title => "Problem!",
	-buttons => ["Ja", "Nein"],
);
my $w = $d->add('Label', -text => 'Problembeschreibung. Weiter?')->pack();

# Button erstellen, durch den der Dialog angezeigt wird.
$mw->Button(
	-text => 'Dialog anzeigen',
	-command => sub{
		if( my $button = $d->Show() ) {
			print "gedrückt: " . $button . "\n";
		}
	},
)->pack;

$mw->MainLoop();
Top