use Perl::pronix.pl

Home

 Programmieren
C-Programmieren
Perl
+ Tutorial
+ Perl/Tk-Modul
CGI

 Bücher
C von A bis Z
C M&T easy
Rezensionen

 Service
Links
Feedback
Mailingliste
Newsletter

 Sonstiges
FAQ
Impressum
 

Perl mit dem Tk-Modul Teil 9

Steuerelemente - Scrollbar Listbox          zurück zum Inhaltsverzeichnis

Sie haben ja bereits kurz gesehen wie Sie Listboxen einsetzen können. Richtig funktional werden diese aber erst mit Hilfe einer Scrollfunktion einer Scrollbar. Sehen wir uns also ein Beispiel an wie Sie durch eine Liste scrollen können ...

#! /usr/bin/perl -w

use strict;
use Tk;

my $main = MainWindow->new;
my $box = $main->Listbox(-height => 5);

my @items = qw(Eins Zwei Drei Vier Fünf Sechs Sieben Acht Neun Zehn);
foreach (@items) {
   $box->insert('end', $_);
   }

my $scroll = $main->Scrollbar(-command => ['yview', $box]);
$box->configure(-yscrollcommand => ['set', $scroll]);
$box->pack(-side => 'left', -fill => 'both', -expand => 1);
$scroll->pack(-side => 'right', -fill => 'y');

MainLoop;

So siehts aus (Linux/Unix):

Steuerelement Scrollbar Listbox Linux/Unix

So siehts aus (MS Windows):

Steuerelement Scrollbar Listbox MS Windows

Entscheidend sind die beiden Zeilen ...

my $scroll = $main->Scrollbar(-command => ['yview', $box]);
$box->configure(-yscrollcommand => ['set', $scroll]);

Das Kommando ['yview', $box] in der Scrollbar bedeutet soviel das Sie den "Scrollbutton" in y-Richtung, also Auf-und Abbewegen können. Der Inhalt der dabei mitbewegt wird ist die Referenz auf die Listbox $box. Wenn Beispielsweise schreiben würden ['xview', $box] würde sich die Scrollbar nicht mehr bewegen lassen, da die x-Richtung aktiviert haben. Die Listbox müssen Sie auch noch mit ...

-yscrollcommand => ['set', $scroll]

... auf die y-Richtung einstellen und sozusagen verbinden mit der Scrollbar. configure(..) werden Sie auch noch häufiger sehen. Damit ist es uns möglich Widgets-Optionen zu ändern.



















 

 

© 2000 - 2003 Jürgen Wolf