1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49
| #!/usr/bin/perl -w
use Gtk2 '-init';
use Gtk2::SimpleList;
my $window = Gtk2::Window->new('toplevel');
$window->resize(320,120);
$window->signal_connect('delete-event',sub{Gtk2->main_quit();});
my $liste = Gtk2::SimpleList->new(type=>"text");
$liste->signal_connect('cursor_changed',\&click);
$liste->signal_connect('key_release_event',\&deplace);
fill_liste();
$row=0;
$liste->select($row);
$window->add($liste);
$window->show_all();
Gtk2->main();
sub deplace
{
shift; #La variable GtkWindow
my $key=shift;
if ($key->keyval == 32) # La touche espace
{
$row++;
$liste->select($row);
}
}
sub click
{
my $select = $liste->get_selection();
my $row_cur = $select->get_selected_rows();
if ( defined $row_cur)
{
$row=$row_cur->to_string;
$liste->select($row);
}
}
sub fill_liste
{
my @tab_valeur = qw(val1 val2 val3 val4 val5 val6 val7);
$liste->set_data_array(\@tab_valeur);
} |
Partager