[wxPython] - Récupérer l'ID d'un menuItem

- Récupérer l'ID d'un menuItem [wxPython] - Python - Programmation

Marsh Posté le 05-07-2005 à 10:32:15    

Bonjour,
 
je suis en train de faire une application graphique en Python avec wxPython. Seulement j'ai un problème, je n'arrive pas à récupérer l'ID de l'élément du menu sur lequel je viens de cliquer.
 
Voici un exemple de code simplifié de ce que je souhaite faire :
 

Code :
  1. class FenetrePrincipale(wx.Frame):
  2.         (...)
  3.         def CreerMenu(self):
  4.                 menuBar = wx.MenuBar()
  5.                 menu1 = wx.Menu()
  6.                 menu1.Append(101, "&Ouvrir", "Ouvrir un fichier" )
  7.                 menu1.Append(102, "Ouvrir (RO)", "Ouvrir un fichier en lecture seule" )
  8.                 menu1.Append(103, "&Fermer\tCtrl+F4", "Fermer le fichier" )
  9.                 menu1.Append(104, "&Quitter\tAlt+F4", "Quitter" )
  10.                
  11.                 menuBar.Append(menu1, "&Fichier" )
  12.                 self.SetMenuBar(menuBar)
  13.                 self.Bind(wx.EVT_MENU, self.Ouvrir, id=101)
  14.                 self.Bind(wx.EVT_MENU, self.Ouvrir, id=102)
  15.                 self.Bind(wx.EVT_MENU, self.Fermer, id=103)
  16.                 self.Bind(wx.EVT_MENU, self.Quitter, id=104)
  17.         def Fermer(self, event):
  18.                 (...)
  19.         def Quitter(self, event):
  20.                 sys.exit()
  21.         def Ouvrir(self, event):
  22.                 print "ITEM Selectionné :",
  23.                
  24.                 # C'est ici que je veux récupérer l'ID, c'est à dire '101' ou '102'
  25.                 print id


 
Il y a donc deux items qui pointent vers la fonction 'Ouvrir', mais comment récupérer l'ID pour adapter l'action de la fonction ?
 
Merci d'avance.
 
@+

Reply

Marsh Posté le 05-07-2005 à 10:32:15   

Reply

Marsh Posté le 05-07-2005 à 10:49:43    

Bon ben en fait j'ai trouvé, il fallait faire :
 

Code :
  1. (...)
  2.          def Ouvrir(self, event):
  3.                  print "ITEM Selectionné :",
  4.                  
  5.                  # C'est ici que je veux récupérer l'ID, c'est à dire '101' ou '102'
  6.                  id = event.GetId()
  7.                  print id
  8.          (...)


 
C'était aussi simple que ça  :sarcastic:  
 
 :hello:  @+  :hello:

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed