![ein Kapitel weiter](../weiter.gif)
Jetzt wollen wir ein weiteres Steuerelement der MainWindow-Methode verwenden,
nämlich Button was einen Schalter darstellen soll.....
#!/usr/bin/perl -w
use strict;
use Tk;
my $fenster = MainWindow->new;
my $schalter = $fenster->Button("-text" => "Klick mich",
"-command" => sub { print "Zurück in der Konsole\n"; exit 0; } );
$schalter->pack();
MainLoop;
So siehts aus :
Im Gegensatz zu unserem Beispiel mit dem Label haben wir hier die MainWindow
Methode Button verwendet.......
my $schalter = $fenster->Button("-text" => "Klick mich",
"-command" => sub { print "Zurück in der Konsole\n"; exit 0; } );
Damit erzeugen wir einen Schalter auf dem der Text "Klick mich" steht und bei
Betätigung das Fenster schließt und eine Ausgabe in der Konsole macht und sich somit
beendet (exit 0). Dafür sorgt im Button "-command" der eine Perl Unterfunktion aufruft
bei Betätigung. Dies ist übrigens ein typischer Tk-Stil.....
"-option" => Anweisung
Hier ein paar Widget-Optionen die wir noch häufiger anwenden
werden.......
Widget-Option |
Bedeutung |
-anchor => "n" | "ne" | "e" | "se" | "s" | "sw" | "w" | "nw" | "center" |
Der Text wird an dieser Position verankert. |
-background => Farbe |
Legt die Hintergrundfarbe des Widget fest. |
-borderwidth => Betrag |
Ändert die Breite des Rahmens. - |
-command => Callback |
Aktiviert die Callback-Funktion, wenn das Widget angeklickt wird. |
-height => Betrag , -width => Betrag |
Ändert die Höhe oder Breite des Widgets. |
-justify => "left" | "right" | "center" |
Ausrichtung von mehrzeiligen Text. |
-relief => "flat" | "groove" | "raised" | "ridge" | "sunken" | "solid" |
Ändert den Kantentyp. |
-state => "normal" | "disabled" | "active" |
Der Status des Widgets. |
-text => "Text" |
Der Textstring, der im Widget angezeigt wird. |
-textvariable => \$text |
Wie -text , nur das sich der Text ändert, wenn $text sich ändert. |
-title => "Titel" |
Gibt dem Widget einen Titel. Funktioniert nur bei Frames und Fenstern. |
Wollen wir uns doch auch mal ansehen wie wir den Text des Buttons während der
Ausführung des Programms ändern können. Dafür haben wir die Option......
-textvariable => \$variable
Hierzu ein Beispiel bei dem bei jedem Anklicken des Buttons die aktuelle Uhrzeit und
Datum auf dem Button steht.........
#!/usr/bin/perl -w
use strict;
use Tk;
my $main = MainWindow->new;
$_= localtime(time);
$main->Button(-textvariable => \$_,
-command => sub { $_ = localtime(time) })->pack;
MainLoop;
So siehts aus :
Die Funktion localtime gibt uns das aktuelle Datum mit Uhrzeit wieder.
Ein Tipp dazu. Scheuen sie sich nicht mit diesen Optionen herumzuspielen. Diese Laden
sie gerade dazu ein.
Mehr dazu unter : man Tk::Button
![ein Kapitel weiter](../weiter.gif)
© 2001,2002 Jürgen Wolf
|