Menus
Menus are the pull-down lists you’re accustomed to seeing at the top of a window (or the entire display, if you’re accustomed to seeing them on a Macintosh). Move the mouse cursor to the menu bar at the top and click on a name (e.g., File), and a list of selectable options pops up under the name you clicked (e.g., Open, Save). The options within a menu might trigger actions, much like clicking on a button; they may also open other “cascading” submenus that list more options, pop up dialog windows, and so on. In Tkinter, there are two kinds of menus you can add to your scripts: top-level window menus and frame-based menus. The former option is better suited to whole windows, but the latter also works as a nested component.
Top-Level Window Menus
In more recent Python releases (using Tk 8.0 and
later), you can associate a horizontal menu bar with a top-level
window object (e.g., a Tk
or
Toplevel
). On Windows and Unix (X
Windows), this menu bar is displayed along the top of the window; on
Macintosh, this menu replaces the one shown at the top of the screen
when the window is selected. In other words, window menus look like
you would expect on whatever underlying platform your script runs
upon.
This scheme is based on building trees of Menu
widget objects. Simply associate one
top-level Menu
with the window,
add other pull-down Menu
objects
as cascades of the top-level Menu
, and add entries to each of the
pull-down objects. Menu
s are cross-linked with the next higher level, by using ...
Get Programming Python, 3rd Edition now with the O’Reilly learning platform.
O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.