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

Caml Discussion :

[Lablgtk] Gestion événements


Sujet :

Caml

  1. #1
    Membre à l'essai
    Profil pro
    Inscrit en
    Décembre 2010
    Messages
    26
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2010
    Messages : 26
    Points : 15
    Points
    15
    Par défaut [Lablgtk] Gestion événements
    Bonjour, je suis en train d'essayer de comprendre le fonctionnement de la gestion des événements sous lablgtk mais j'ai un soucis avec la détection des touches du clavier, qui ne sont justement pas détectées :/

    J'ai un code extrêmement simple, en fait il y a juste une window contenant une event_box sur laquelle je fais tout mes essais :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    event_box#event#connect#key_release
        ~callback: (fun (ev:GdkEvent.Key.t) ->
          (print_int (GdkEvent.Key.keyval ev) ;
           print_newline();
           true));
    Sur le même modèle j'ai tester les méthodes button_press, button_release et scroll et ça fonctionne à merveille. Seulement là, aboslument rien ne se passe dans la console lorsque j'essaye de taper des touches du clavier ! D'où peut bien venir le problème ?

  2. #2
    Membre éprouvé
    Avatar de Cacophrene
    Homme Profil pro
    Biologiste
    Inscrit en
    Janvier 2009
    Messages
    535
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Royaume-Uni

    Informations professionnelles :
    Activité : Biologiste

    Informations forums :
    Inscription : Janvier 2009
    Messages : 535
    Points : 1 125
    Points
    1 125
    Par défaut
    Bonsoir,

    Je ne sais pas dans quel contexte tu veux utiliser une event_box, mais celle-ci n'est nécessaire qu'avec les objets de type windowless, qui ne peuvent pas capturer eux-mêmes les événements. Ce n'est pas le cas d'une fenêtre, et ce code fait ce que tu veux :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    let window = 
      GMain.init ();
      GWindow.window ~width:800 ~height:600 ()
    
    let _ = window#event#connect#key_release
        ~callback:(fun ev ->
           print_int (GdkEvent.Key.keyval ev) ;
           print_newline ();
           true)
    
    let _ = 
      window#show (); 
      GMain.main ()
    D'où cette question : as-tu vraiment besoin d'une event_box ? Si oui, il faut l'utiliser dans le contexte approprié.

    Cordialement,
    Cacophrène

  3. #3
    Membre à l'essai
    Profil pro
    Inscrit en
    Décembre 2010
    Messages
    26
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2010
    Messages : 26
    Points : 15
    Points
    15
    Par défaut
    Tout d'abord, merci pour ta réponse aussi rapide. En fait je n'ai pas particulièrement besoin d'une event_box, c'est juste que je n'avais pas vu que les windows possèdent aussi la methode event ^^'
    Alors effectivement ça fonctionne avec une window ! Mais pourquoi cela ne fonctionne-t-il pas avec l'event_box ??

Discussions similaires

  1. Librairie gestion évènements clavier
    Par Poisson_Pilote dans le forum Ada
    Réponses: 2
    Dernier message: 29/10/2007, 09h54
  2. Gestion évènements SDL dans panel wxwidgets
    Par |Psk| dans le forum SDL
    Réponses: 1
    Dernier message: 08/09/2007, 02h52
  3. Gestion évènements OnCellClick OnDoubleClick
    Par RodEpsi dans le forum Delphi
    Réponses: 11
    Dernier message: 24/02/2007, 21h05
  4. [Visual Studio][MFC] Gestions évènements
    Par Mic75 dans le forum MFC
    Réponses: 6
    Dernier message: 07/06/2006, 21h03
  5. [MFC][VC++.NET]gestion évènement clavier
    Par Rafoo dans le forum MFC
    Réponses: 2
    Dernier message: 14/12/2005, 10h29

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