Python 2.7 WX菜单和子菜单

Python 2.7 WX菜单和子菜单,python-2.7,wxpython,Python 2.7,Wxpython,众所周知,wx.Menu.Append(wx.ID_ANY)返回和项,并且在菜单中具有唯一ID。菜单中的子菜单也是如此吗 generalMenu=wx.Menu() item1 = generalMenu.Append(wx.ID_ANY, "item 1") item2 = generalMenu.Append(wx.ID_ANY, "item 2") subMenu=wx.Menu() item3 = subMenu.Append(wx.ID_ANY, "item 1") item4 =

众所周知,wx.Menu.Append(wx.ID_ANY)返回和项,并且在菜单中具有唯一ID。菜单中的子菜单也是如此吗

generalMenu=wx.Menu()
item1 = generalMenu.Append(wx.ID_ANY, "item 1")
item2 = generalMenu.Append(wx.ID_ANY, "item 2")

subMenu=wx.Menu()
item3 = subMenu.Append(wx.ID_ANY, "item 1")
item4 = subMenu.Append(wx.ID_ANY, "item 2")

generalMenu.AppendSubMenu(subMenu, "Sub-menu")

wx是否确保项目1、项目2、项目3和项目4具有所有不同的ID?或者只是在同一个菜单中?

是的,它们将是唯一的
wx.ID\u任意
wx.NewId()
创建在应用程序中全局唯一的ID


(这些有一个最大限制,然后会变得一团糟,但这可能不是这个问题的问题。)

这个限制是什么?我认为答案有点复杂,可能取决于操作系统。我想大概是32000,这是由于Windows的限制(也就是说,对大多数应用来说不是问题)。如果您需要更好的答案,可以查询wxPython列表。