IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

GTK+ avec C & C++ Discussion :

Désactiver la molette de la souris d'un ScrolledWindow


Sujet :

GTK+ avec C & C++

  1. #1
    Nouveau candidat au Club
    Profil pro
    Inscrit en
    Octobre 2012
    Messages
    1
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2012
    Messages : 1
    Par défaut Désactiver la molette de la souris d'un ScrolledWindow
    Bonjour,
    J'ai un drawingarea dans lequel je fais des actions utilisant pour certaines d'entre elles la molette de la souris.
    Le drawingarea est intégré dans un ScrolledWindow car la dimension de l'image peut varier.

    Le problème est que la barre de défilement vertical se déplace aussi quand j'utilise la molette pour faire mes dessins.
    Je souhaite que la molette soit effective pour le drawingarea mais pas pour le scrolledwindow.

    J'ai essayé différents trucs mais rien n'y fait et là, je sèche...

    Un peu d'aide serait la bienvenue. Merci d'avance.

  2. #2
    Expert confirmé
    Avatar de gerald3d
    Homme Profil pro
    Conducteur de train
    Inscrit en
    Février 2008
    Messages
    2 308
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 55
    Localisation : France, Côte d'Or (Bourgogne)

    Informations professionnelles :
    Activité : Conducteur de train
    Secteur : Transports

    Informations forums :
    Inscription : Février 2008
    Messages : 2 308
    Billets dans le blog
    5
    Par défaut
    Bonjour.

    Et moi aussi je suis dans un "bon jour" . Je vais donc te donner un code exemple fonctionnel avec une petite explication en sus.

    La plupart des callbacks que tu attaches à différents signaux doivent retourner TRUE ou FALSE. Pour la plupart d'entre eux le rôle de ce retour est de demander au gestionnaire de fenêtre de propager le signal qui a activé le callback aux autres fonctions qui y seraient attachées. Il te suffit donc de retourner TRUE pour arrêter la propagation. Ainsi ton GtkScrolledWindow ne pourra pas le recevoir. Le tour est joué .

    Le code exemple à essayer :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    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
    #include<gtk/gtk.h>
     
     
    gboolean
    on_scrolled_window_event (GtkWidget *widget, GdkEvent  *event, gpointer user_data)
    {
      g_printerr ("signal scroll-event du GtkScrolledWindow intercepté.\n");
      return TRUE;
    }
     
     
     
    int main (int argc,char **argv)
    {
        GtkWidget *window=NULL;
        GtkWidget *scrolledwindow=NULL;
        GtkWidget *drawingarea=NULL;
     
        gtk_init(&argc,&argv);
        window=gtk_window_new(GTK_WINDOW_TOPLEVEL);
        gtk_window_set_default_size (GTK_WINDOW (window), 200, 200);
        scrolledwindow = gtk_scrolled_window_new (NULL, NULL);
        gtk_container_add (GTK_CONTAINER (window), scrolledwindow);
        g_signal_connect (G_OBJECT (scrolledwindow), "scroll-event", (GCallback)on_scrolled_window_event, NULL);
     
        drawingarea = gtk_drawing_area_new ();
        gtk_widget_set_size_request (drawingarea, 1000, 1000);
        gtk_scrolled_window_add_with_viewport (GTK_SCROLLED_WINDOW (scrolledwindow), drawingarea);
     
        g_signal_connect (G_OBJECT (window), "destroy", (GCallback)gtk_main_quit, NULL);
     
        gtk_widget_show_all(window);
     
        gtk_main();
     
        return 0;
    }

Discussions similaires

  1. Réponses: 3
    Dernier message: 06/12/2007, 09h32
  2. désactiver la molette de la souris
    Par yousron dans le forum Access
    Réponses: 4
    Dernier message: 27/12/2006, 17h58
  3. Problème de désactivation de molette de la souris
    Par Lemnear dans le forum Access
    Réponses: 11
    Dernier message: 24/07/2006, 11h20
  4. désactiver la molette de la souris sous access 97
    Par tzinzin dans le forum Access
    Réponses: 1
    Dernier message: 30/03/2006, 17h12
  5. Réponses: 3
    Dernier message: 12/01/2006, 10h51

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo