• # Meuh

    Posté par . En réponse au message Gtk::Image. Évalué à 3.

    Il faut que tu utilises Gtk2::DrawingArea. Regarde la doc pour ce widget mais voici un point de départ :

    #!/usr/bin/perl -w

    use strict;
    use Gtk2 '-init';

    my $window = Gtk2::Window->new( 'toplevel' );
    $window->signal_connect( 'delete_event' => sub { $window->destroy } );
    $window->signal_connect( 'destroy' => sub { Gtk2->main_quit } );

    my $vb = Gtk2::VBox->new;
    $vb->add( my $da = Gtk2::DrawingArea->new );
    $da->set_size_request( 100, 100 );
    $vb->add( my $bt = Gtk2::Button->new( "meuh" ) );
    $bt->signal_connect( 'clicked' => sub { $window->destroy } );

    $window->add( $vb );


    $da->signal_connect( 'expose-event' => sub {
    my $alloc = $da->allocation;
    $da->window->draw_line( $da->style->fg_gc( $da->state ),
    30, 30, 80, 60 );
    $da->window->draw_rectangle( $da->style->fg_gc( $da->state ), 1,
    5, 50, 20, 40 );
    $da->window->draw_arc( $da->style->fg_gc( $da->state ), 0,
    5, 5, $alloc->width, $alloc->height,
    8 * 360, 16 * 360 );
    } );


    $window->show_all;
    Gtk2->main;