Menus are a way to provide the user with a number of actions that can be performed by either clicking on them or using an associated keyboard shortcut. Menus allow us to categorize and organize any number of actions in lists and trees with submenus, all while keeping them out of sight until they are needed. This recipe will show you how to add menus to a frame and set up keyboard shortcuts to activate them by building up a little text editor application.
Here are the steps to be performed:
First, to make adding icons to the menus in this application easier, let's define a custom
Menu
wrapper class that will automatically get a bitmap fromArtProvider
when one is available. This first little part just defines a way to map control IDs to ART IDs, as follows:class EasyMenu(wx.Menu): _map = { wx.ID_CUT : wx.ART_CUT, wx.ID_COPY : wx.ART_COPY, wx.ID_PASTE : wx.ART_PASTE, wx.ID_OPEN : wx.ART_FILE_OPEN, ...