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

wxPython Discussion :

wx.EVT_MOUSE_EVENTS sur un wx.Grid


Sujet :

wxPython

  1. #1
    Membre habitué
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Janvier 2007
    Messages
    172
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Janvier 2007
    Messages : 172
    Points : 163
    Points
    163
    Par défaut wx.EVT_MOUSE_EVENTS sur un wx.Grid
    Voici mon problème :

    - J'essaie de récupérer l'évènement du mouvement de souris sur mon grid mais rien n'y fait Evidement j'ai essayé de le récupérer sur la frame ou encore sur un Onglet (wx.Notebook) et ça marche très bien...Cet évènement ne serait pas interceptable sur un grid ???

    Voici le bout de code de la grille (j'ai fait au plus simple )

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    class Grid(gridlib.Grid):
            def __init__(self, parent):
                    gridlib.Grid.__init__(self, parent, -1,pos=(100,100),size=(500,400))
                    self.CreateGrid(5, 5)
                    wx.EVT_MOUSE_EVENTS(self,self.Souris)
     
            def Souris(self,evt):
                    if(evt.Moving()):
                            print("ca marche !")
    Merci d'avance pour vos futures réponses !!!

  2. #2
    Membre habitué
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Janvier 2007
    Messages
    172
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Janvier 2007
    Messages : 172
    Points : 163
    Points
    163
    Par défaut
    Bon bah j'ai trouvé tout seul

    - Voici le code pour ceux que ça intéresserait :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    class Grid(gridlib.Grid):
            def __init__(self, parent):
                    gridlib.Grid.__init__(self, parent, -1,pos=(100,100),size=(500,400))
                    self.CreateGrid(5, 5)
                    FenetreGrid = self.GetGridWindow()
                    FenetreGrid.Bind(wx.EVT_MOUSE_EVENTS, self.SourisBouge)
     
            def SourisBouge(self,evt):
                    if(evt.Moving()):
                            print("ca marche !")

  3. #3
    Membre habitué
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Janvier 2007
    Messages
    172
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Janvier 2007
    Messages : 172
    Points : 163
    Points
    163
    Par défaut
    Bon je continue mon monologue, j'arrive désormais à récupérer le survol de la souris sur la grille, j'aimerais maintenant récupérer le numéro de ligne et de colonne de la grille qu'elle survolle

    Si quelqu'un a une idée, elle sera la bienvenue !

  4. #4
    Membre actif
    Profil pro
    Inscrit en
    Septembre 2007
    Messages
    328
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2007
    Messages : 328
    Points : 240
    Points
    240
    Par défaut
    Salut, excuse-moi te de déranger dans ton monologue. Je te donne vite la réponse avant que tu ne la trouves toi-même

    Dans la doc wxWidgets, je vois les fonctions :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    XToCol(int x, bool clipToMinMax = false)
    et

    A +.

  5. #5
    Membre habitué
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Janvier 2007
    Messages
    172
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Janvier 2007
    Messages : 172
    Points : 163
    Points
    163
    Par défaut
    Merci, ça marche nickel

  6. #6
    Membre habitué
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Janvier 2007
    Messages
    172
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Janvier 2007
    Messages : 172
    Points : 163
    Points
    163
    Par défaut Un petit oubli....
    Voilà il y a 8 ans je résolvais ce problème mais j'ai omis de donner le code final...Pardon pour ce petit contretemps, le voici :

    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
    class Grid(gridlib.Grid):
            def __init__(self, parent):
                    gridlib.Grid.__init__(self, parent, -1,pos=(100,100),size=(500,400))
                    self.CreateGrid(5, 5)
                    FenetreGrid = self.GetGridWindow()
                    FenetreGrid.Bind(wx.EVT_MOUSE_EVENTS, self.SourisBouge)
     
            def SourisBouge(self,evt):
                    if(evt.Moving()):
                        x=evt.GetX()
                        y=evt.GetY()
                        plop = self.XToCol(x)
                        plop2=self.YToRow(y)
                        print plop,plop2
                        evt.Skip()

  7. #7
    Membre actif
    Profil pro
    Inscrit en
    Septembre 2007
    Messages
    328
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2007
    Messages : 328
    Points : 240
    Points
    240
    Par défaut
    On a failli attendre...

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Demande d'aide sur struts2-jquery-grid-showcase
    Par ibuto dans le forum Struts 2
    Réponses: 1
    Dernier message: 03/05/2013, 14h15
  2. Aller sur 1ere ligne grid Infragistics
    Par Cazaux-Moutou-Philippe dans le forum Windows Forms
    Réponses: 0
    Dernier message: 28/10/2008, 17h43
  3. Réponses: 7
    Dernier message: 01/03/2006, 18h14
  4. Copier derniere colonne d'un grid sur excel
    Par EssaiEncore dans le forum Langage
    Réponses: 7
    Dernier message: 18/01/2006, 11h33
  5. capter l'evenement clic sur une cellule d'un string grid
    Par lasconic dans le forum Composants VCL
    Réponses: 3
    Dernier message: 25/06/2003, 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