The Menu Widget
Create a menu with the Menu
method, to be displayed later with the post
method.
$menu = $parent->Menu(options)
The standard configuration options that apply to
Menu
are: -activebackground
, -activeforeground
, -background
, -bg
, -borderwidth
, -bw
, -cursor
, -disabledforeground
, -font
, -foreground
, -fg
, -relief
, and -takefocus
.
Other options are:
-activeborderwidth =>
amount
- Sets the width of the edges for the active menu item.
-menuitems =>
list
- Specifies items to create in the menu as a list of lists.
-postcommand =>
callback
- The command to invoke before the menu is posted, for example, to update the state of the menu items.
-tearoff =>
boolean
- Whether or not to allow the menu to be "torn off." Default is 1.
-selectcolor =>
color
- Color of the selection box for checkbuttons or radiobuttons.
Menu Indexes
Menus have indexes for manipulating individual menu items. They are:
n
- Menu item
n
, with 0 representing the first item. 'active'
- The current menu item.
'end'
or'last'
- The last menu item.
'none'
- No menu item.
@
n
- The menu item closest to the y coordinate specified by
n
. - '
pattern'
- The first menu item whose text matches the pattern.
Menu Methods
In addition to configure
and cget
, the following methods are defined for the Menu widget:
add
- Adds items to the end of a menu. The first argument is the type of menu item to add, and additional arguments are options to the menu item. For example:
$menu = $mainwindow->Menu; $menu->add( 'commnd', -label => "New", "-command" => \&newfile );
entrycget
- Gets information on a specific menu item given an index.
entryconfigure
- Changes information on a specific menu item given an index.
post
- Displays the menu widget.
unpost
- Removes the menu widget from display.
postcascade
- Unposts a submenu and then posts the cascade menu associated with the menu item at the specified index.
delete
- Removes menu items from the menu.
index
- Given a named index, returns the numerical index for that menu item.
insert
- Inserts a menu item at the specified index. Same as
add
, except that it takes an index as the first argument. invoke
- Invokes the menu item at the specified index as if it were selected.
type
- Returns the type of menu item at the specified index.
yposition
- Returns the y coordinate of the top-most pixel of the menu item.