#!/usr/bin/perl use Tk; $MW = MainWindow->new(-title => "Reach-Ticker by Dataabbel"); $MW->resizable(0,0); $MW->geometry("300x30+10+20"); $MW->repeat(90, \&tick); $LabelW = $MW->Label(-textvariable => "")->pack(-expand => 1, -fill => 'x'); # leeres label erzeugen @data = qw (www.petra-hille.de www.google.de www.yahoo.de www.perl-community.de); foreach $host (@data) { $| = 1; @pin = `ping -c 1 $host`; if ($pin[4] =~ /received/) { chomp ($host); $text = $host . " received "; $LabelW->configure(-textvariable => ""); # sollte das Label vorsichtshalber löschen, glaube unsinnig $LabelW->configure(-textvariable => \$text); # hier sollte nu der aktuelle host stehen,steht aber nur letztes element aus @data } } MainLoop; sub tick { $width = $LabelW->cget('width'); return unless $width < length $text; $text = substr($text,1,length($text)-1) . substr($text,0,1); }