#!/usr/bin/perl -w use strict; #................................................................ class myLabel package MyLabel; use Qt; use Qt::isa qw(Qt::Label); use Qt::attributes qw( zeit text ); # Festlegen der Attributnamen sub NEW { shift->SUPER::NEW(@_[0..2]); text = $_[0]; # Zuweisen des ersten Arguments an Attribut text setFont( Qt::Font( "Times", 16 ) ); setAlignment( &Qt::AlignCenter ); # Zugriff auf Qt-enum-Konstanten zeit = Qt::Time; # Zeit wird ein QTime-Objekt zeit->start; # ... Stoppuhr starten resize( 200, 200 ); } sub resizeEvent { # Anzeigen der aktuellen Breite und Höhe, sowie # die seit Programmstart vergangene Zeit setText( " Breite: ". width() .", Höhe: ". height() . "\n Zeit: ". zeit->elapsed/1000 . text ); } #......................................................................... main package main; use Qt; # Qt-Interface importieren use MyLabel; # package MyLabel importieren my $a = Qt::Application(\@ARGV); my $w = MyLabel(" Sek.", undef); # Anlegen eines MyLabel-Objekts $a->setMainWidget($w); $w->show; exit $a->exec;