Re-salut à toutes et à tous.

Tjs en pleine découverte de wx, je m'amuse à présent avec les menus.
De ce que j'ai compris, il faut assigner un ID unique à chaque MenuItem pour pouvoir les reconnaître et gérer les clicks et autres.
Leur exemple est le suivant (à défaut d'en avoir fait un moi-même):
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
ID_ABOUT = 101
ID_EXIT  = 102
 
class MyFrame(wxFrame):
    def __init__(self, parent, ID, title):
        (...)
 
        menu = wxMenu()
        menu.Append(ID_ABOUT, "&About",
                    "More information about this program")
        menu.AppendSeparator()
        menu.Append(ID_EXIT, "E&xit", "Terminate the program")
        menuBar = wxMenuBar()
        menuBar.Append(menu, "&File");
        self.SetMenuBar(menuBar)
 
        EVT_MENU(self, ID_ABOUT, self.OnAbout)
        EVT_MENU(self, ID_EXIT,  self.TimeToQuit)
 
    (...)
Mais je trouve ça horrible !
Dans le sens qu'on est obligés de définir un ID par élément de menu, et de s'assurer qu'il soit unique. Atroce !

N'y a-t-il pas un moyen ressemblant plutôt à celui-ci ? Ca m'éviterait de devoir créer une sorte de gestionnaire d'id de menu...
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
menu = wx.Menu()
miAbout = wx.MenuItem("&About", "More information about this program")
miExit = wx.MenuItem("&Exit", "Exit")
EVT_MENUITEM_LEFT_UP(miAbout, self.OnAbout)
EVT_MENUITEM_LEFT_UP(miExit, self.TimeToQuit)