#================================ # Variablen #================================ $ButtontextS = "Start"; $ButtontextP = "Pause"; $ButtontextW = "Weiter"; $torkel = 1; $zaehler = 0; $zahl = 50; #================================ # Hauptfenster #================================ $Hf = new MainWindow (-title => "Test"); $Hf->geometry('400x300'); $Hf->geometry('+10+10'); #================================ # Anzeige-Frame (bzw. Widget) #================================ $FrAnzeige = $Hf->Frame(-borderwidth, 3,-relief, ridge) ->pack(); $Anzeigefenst = $FrAnzeige->Scrolled(Text,-wrap,none, -scrollbars,se, -height,14, -width,80) ->pack(); #================================ # Buttons #================================ $BtnStart = $Hf->Button(-text => "Start") ->pack(-side => 'left',-expand => "1", -fill => both); $BtnQuit = $Hf->Button(-text => "Abbrechen", -command => [ $Hf => 'destroy']) ->pack(-side => 'left',-expand => "1", -fill => both); #================================ # Bindung #================================ $BtnStart->bind('', sub { if($torkel eq 1) { $BtnStart->configure(-text => "$ButtontextP"); $torkel--; start(); } else { $BtnStart->configure(-text => "$ButtontextW"); $torkel++; stop(); } } ); #================================ # Tk-Abschlussanweisung #================================ MainLoop(); #================================ # Unterprogramm #================================ sub start { while () { # hier soll irgendein Code ausgeführt werden # und der Output soll dann im Anzeigeframe # erscheinen # z.B. $zahl = $zahl + $zaehler++; print "\nZahl: $zahl"; sleep 1; } } sub stop { # Hier soll der Output zeitweise angehalten # werden können }