Tk::Dialog - Modaler Dialog

Tk::Dialog ist ein modaler Dialog. Das Hauptfenster von Perl/Tk wird so lange blockiert, bis der Dialog beantwortet wurde. Wer einen nicht-modalen Dialog sucht, der ist mit Tk::DialogBox besser beraten.

Optionen für Tk::Dialog

Das Bild, welches per -bitmap angegeben wird, ist optional. Es kann ein in Tk eingebautes Widget sein oder ein benutzerdefiniertes Bild. Eine Liste der eingebauten Bitmaps gibt es auf der Tk::Bitmap-Seite.

Parameter für Tk::Dialog-Widget in Perl/Tk

Beispielprogramm

Der Beispiel-Quellcode aus dem der Screenshot erstellt wurde sieht wie folgt aus:

#!/Perl/bin/perl

=comment

dialog.pl
Zeigt einen modalen Dialog mit Ja- und Nein-Button.

=cut

use strict;
use warnings;
use Tk;
use Tk::Dialog;

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

# Dialog-Widget erstellen
my $d = $mw->Dialog(
	-title => 'Info zu modalem Dialog!',
	-text => 'Modaler Dialog - der Dialog blockiert die Interaktion mit dem Hauptfenster.',
	-bitmap => 'info',
	-buttons => ['Ok', 'Ist mir egal'],
	-default_button => 'Ist mir egal',
);

# Button erstellen, durch den der Dialog angezeigt wird.
$mw->Button(
	-text => 'Dialog anzeigen',
	-command => sub{
		if( my $response = $d->Show() ) {
			print "Antwort: " . $response . "\n";
		}else{
			print "Der Dialog wurde nicht über einen der Buttons beantwortet.";
		}
	},
)->pack;

$mw->MainLoop();
Top