tk_menuSetFocus man page on OpenMandriva

Man page or keyword search:  
man Server   8135 pages
apropos Keyword Search (all sections)
Output format
OpenMandriva logo
[printable version]

menu(n)			     Tk Built-In Commands		       menu(n)

______________________________________________________________________________

NAME
       menu, tk_menuSetFocus - Create and manipulate menu widgets

SYNOPSIS
       menu pathName ?options?
       tk_menuSetFocus pathName

STANDARD OPTIONS
       -activebackground     -borderwidth	  -foreground
       -activeborderwidth    -cursor		  -relief
       -activeforeground     -disabledforeground  -takefocus
       -background	     -font

       See the options manual entry for details on the standard options.

WIDGET-SPECIFIC OPTIONS
       [-postcommand postCommand] If this option is specified then it provides
       a Tcl command to execute each time the menu is posted.  The command  is
       invoked	by  the post widget command before posting the menu. Note that
       in Tk 8.0 on Macintosh and Windows, all post-commands in	 a  system  of
       menus  are  executed before any of those menus are posted.  This is due
       to  the	limitations  in	 the  individual  platforms'  menu   managers.
       [-selectcolor selectColor]  For	menu entries that are check buttons or
       radio buttons, this option specifies the color to display in the	 indi‐
       cator   when   the   check   button   or	  radio	 button	 is  selected.
       [-tearoff tearOff] This option must have a proper boolean value,	 which
       specifies  whether  or  not the menu should include a tear-off entry at
       the top.	 If so, it will exist as entry 0 of the	 menu  and  the	 other
       entries	will  number starting at 1.  The default menu bindings arrange
       for the menu to be torn off when the tear-off entry is  invoked.	  This
       option  is ignored under Aqua/Mac OS X, where menus cannot be torn off.
       [-tearoffcommand tearOffCommand] If this option has a non-empty	value,
       then  it	 specifies  a  Tcl command to invoke whenever the menu is torn
       off.  The actual command will consist of the value of this option, fol‐
       lowed  by a space, followed by the name of the menu window, followed by
       a space, followed by the name of the name of the torn off menu  window.
       For  example,  if the option's value is “a b” and menu .x.y is torn off
       to  create  a  new  menu	 .x.tearoff1,  then  the  command  “a  b  .x.y
       .x.tearoff1” will be invoked.  This option is ignored under Aqua/Mac OS
       X, where menus cannot be torn off.  [-title title] The string  will  be
       used  to	 title	the  window created when this menu is torn off. If the
       title is NULL, then the window will have the title of the menubutton or
       the  text  of  the  cascade  item  from	which  this  menu was invoked.
       [-type type] This option can be one of menubar, tearoff, or normal, and
       is  set when the menu is created. While the string returned by the con‐
       figuration database will change if this option is  changed,  this  does
       not  affect  the	 menu  widget's	 behavior. This is used by the cloning
       mechanism and is not normally set outside of the Tk library.
_________________________________________________________________

INTRODUCTION
       The menu command creates a new top-level window (given by the  pathName
       argument)  and  makes  it  into	a  menu	 widget.   Additional options,
       described above, may be specified on the command line or in the	option
       database	 to configure aspects of the menu such as its colors and font.
       The menu command returns its pathName argument.	At the time this  com‐
       mand  is	 invoked,  there  must	not exist a window named pathName, but
       pathName's parent must exist.

       A menu is a widget that	displays  a  collection	 of  one-line  entries
       arranged	 in  one or more columns.  There exist several different types
       of entries, each with different properties.  Entries of different types
       may  be	combined  in  a single menu.  Menu entries are not the same as
       entry widgets.  In fact, menu entries are not  even  distinct  widgets;
       the entire menu is one widget.

       Menu  entries are displayed with up to three separate fields.  The main
       field is a label in the form of a text string, a bitmap, or  an	image,
       controlled  by  the  -label, -bitmap, and -image options for the entry.
       If the  -accelerator option is specified for an	entry  then  a	second
       textual	field is displayed to the right of the label.  The accelerator
       typically describes a keystroke sequence	 that  may  be	typed  in  the
       application  to	cause the same result as invoking the menu entry.  The
       third field is an indicator.  The indicator is present only for	check‐
       button  or  radiobutton	entries.   It  indicates  whether the entry is
       selected or not, and is displayed to the left of the entry's string.

       In normal use, an entry becomes active  (displays  itself  differently)
       whenever	 the  mouse  pointer  is over the entry.  If a mouse button is
       released over the entry then the entry is invoked.  The effect of invo‐
       cation is different for each type of entry; these effects are described
       below in the sections on individual entries.

       Entries may be disabled, which causes their labels and accelerators  to
       be  displayed  with  dimmer colors.  The default menu bindings will not
       allow a disabled entry to be activated or  invoked.   Disabled  entries
       may  be	re-enabled, at which point it becomes possible to activate and
       invoke them again.

       Whenever a menu's active entry is  changed,  a  <<MenuSelect>>  virtual
       event is send to the menu. The active item can then be queried from the
       menu, and an action can be taken,  such	as  setting  context-sensitive
       help text for the entry.

TYPES OF ENTRIES
   COMMAND ENTRIES
       The  most  common  kind of menu entry is a command entry, which behaves
       much like a button widget.  When a command entry is invoked, a Tcl com‐
       mand  is	 executed.   The  Tcl  command	is specified with the -command
       option.

   SEPARATOR ENTRIES
       A separator is an entry that is	displayed  as  a  horizontal  dividing
       line.   A  separator  may  not  be  activated or invoked, and it has no
       behavior other than its display appearance.

   CHECKBUTTON ENTRIES
       A checkbutton menu entry behaves much like a checkbutton widget.	  When
       it  is invoked it toggles back and forth between the selected and dese‐
       lected states.  When the entry  is  selected,  a	 particular  value  is
       stored  in  a particular global variable (as determined by the -onvalue
       and -variable options for the entry);  when  the	 entry	is  deselected
       another	value  (determined  by	the -offvalue option) is stored in the
       global variable.	 An indicator box is displayed	to  the	 left  of  the
       label  in a checkbutton entry.  If the entry is selected then the indi‐
       cator's center is displayed in the  color  given	 by  the  -selectcolor
       option  for the entry; otherwise the indicator's center is displayed in
       the background color for the menu.  If a -command option	 is  specified
       for  a  checkbutton entry, then its value is evaluated as a Tcl command
       each time the entry  is	invoked;   this	 happens  after	 toggling  the
       entry's selected state.

   RADIOBUTTON ENTRIES
       A  radiobutton  menu  entry  behaves  much  like	 a radiobutton widget.
       Radiobutton entries are organized in groups of which only one entry may
       be selected at a time.  Whenever a particular entry becomes selected it
       stores a particular value into a particular global variable (as	deter‐
       mined  by the -value and -variable options for the entry).  This action
       causes any previously-selected entry in	the  same  group  to  deselect
       itself.	 Once  an entry has become selected, any change to the entry's
       associated variable will cause the entry to deselect itself.   Grouping
       of radiobutton entries is determined by their associated variables:  if
       two entries have the same associated variable then they are in the same
       group.	An  indicator diamond is displayed to the left of the label in
       each radiobutton entry.	If the entry is selected then the  indicator's
       center  is  displayed in the color given by the -selectcolor option for
       the entry; otherwise the indicator's center is displayed in  the	 back‐
       ground  color  for  the	menu.  If a -command option is specified for a
       radiobutton entry, then its value is evaluated as a  Tcl	 command  each
       time the entry is invoked;  this happens after selecting the entry.

   CASCADE ENTRIES
       A cascade entry is one with an associated menu (determined by the -menu
       option).	 Cascade entries allow the construction	 of  cascading	menus.
       The postcascade widget command can be used to post and unpost the asso‐
       ciated menu just next to of the cascade	entry.	 The  associated  menu
       must  be	 a  child  of  the  menu containing the cascade entry (this is
       needed in order for menu traversal to work correctly).

       A cascade entry posts its associated menu by invoking a Tcl command  of
       the form
	      menu post x y
       where menu is the path name of the associated menu, and x and y are the
       root-window coordinates of the upper-right corner of the cascade entry.
       On  Unix,  the  lower-level menu is unposted by executing a Tcl command
       with the form
	      menu unpost
       where menu is the name of the associated menu.  On other platforms, the
       platform's native code takes care of unposting the menu.

       If a -command option is specified for a cascade entry then it is evalu‐
       ated as a Tcl command whenever the entry is invoked. This is  not  sup‐
       ported on Windows.

   TEAR-OFF ENTRIES
       A  tear-off  entry  appears  at the top of the menu if enabled with the
       -tearoff option.	 It is not like other menu entries in that  it	cannot
       be  created  with the add widget command and cannot be deleted with the
       delete widget command.  When a tear-off entry is created it appears  as
       a  dashed  line	at  the	 top of the menu.  Under the default bindings,
       invoking the tear-off entry causes a torn-off copy to be	 made  of  the
       menu and all of its submenus.

MENUBARS
       Any  menu  can  be set as a menubar for a toplevel window (see toplevel
       command for syntax). On the Macintosh,  whenever	 the  toplevel	is  in
       front,  this menu's cascade items will appear in the menubar across the
       top of the main monitor. On Windows and Unix, this menu's items will be
       displayed  in  a menubar across the top of the window. These menus will
       behave according to the interface guidelines of	their  platforms.  For
       every  menu set as a menubar, a clone menu is made. See the CLONES sec‐
       tion for more information.

       As noted, menubars may behave differently on different platforms.   One
       example	of this concerns the handling of checkbuttons and radiobuttons
       within the menu.	 While it is permitted to put these menu  elements  on
       menubars,  they may not be drawn with indicators on some platforms, due
       to system restrictions.

   SPECIAL MENUS IN MENUBARS
       Certain menus in a menubar will be treated specially.   On  the	Macin‐
       tosh,  access to the special Application, Window and Help menus is pro‐
       vided. On Windows, access to the Windows System menu in each window  is
       provided.   On  X  Windows,  a special right-justified help menu may be
       provided if Motif menu compatibility is enabled. In  all	 cases,	 these
       menus  must  be	created with the command name of the menubar menu con‐
       catenated with the special name. So for a menubar named

       When Tk sees a .menubar.apple menu as the first menu in	a  menubar  on
       the  Macintosh,	that  menu's  contents	make up the first items of the
       Application menu whenever the  window  containing  the  menubar	is  in
       front.  After all of the Tk-defined items, the menu will have a separa‐
       tor, followed by all standard Application menu items.   Such  a	.apple
       menu  must be present in a menu when that menu is first configured as a
       toplevel's menubar, otherwise a default application menu	 (hidden  from
       Tk) will be inserted into the menubar at that time and subsequent addi‐
       tion of a .apple menu will no longer result in it becoming the Applica‐
       tion menu.

       When  Tk	 sees a .menubar.window menu on the Macintosh, the menu's con‐
       tents are inserted into the standard Window menu of the user's  menubar
       whenever	 the window's menubar is in front. The first items in the menu
       are provided by Mac OS X, and the names of the  current	toplevels  are
       automatically appended after all the Tk-defined items and a separator.

       When Tk sees a .menubar.help menu on the Macintosh, the menu's contents
       are appended to the standard Help menu of the user's  menubar  whenever
       the  window's menubar is in front. The first items in the menu are pro‐
       vided by Mac OS X.

       When Tk sees a System menu on Windows, its items are  appended  to  the
       system  menu  that the menubar is attached to. This menu is tied to the
       application icon and can	 be  invoked  with  the	 mouse	or  by	typing
       Alt+Spacebar.  Due to limitations in the Windows API, any font changes,
       colors, images, bitmaps, or tearoff images will not appear in the  sys‐
       tem menu.

       When  Tk	 sees a Help menu on X Windows and Motif menu compatibility is
       enabled the menu is moved to be last in the menubar and is right justi‐
       fied.  Motif  menu  compatibility  is  enabled by setting the Tk option
       *Menu.useMotifHelp to true or by calling tk::classic::restore menu.

CLONES
       When a menu is set as a menubar for a toplevel window, or when  a  menu
       is  torn	 off, a clone of the menu is made. This clone is a menu widget
       in its own right, but it is a child of the  original.  Changes  in  the
       configuration of the original are reflected in the clone. Additionally,
       any cascades that are pointed to are also cloned so that menu traversal
       will  work  right.  Clones  are	destroyed  when	 either the tearoff or
       menubar goes away, or when the original menu is destroyed.

WIDGET COMMAND
       The menu command creates a new Tcl  command  whose  name	 is  pathName.
       This  command  may  be used to invoke various operations on the widget.
       It has the following general form:
	      pathName option ?arg arg ...?
       Option and the args determine the exact behavior of the command.

       Many of the widget commands for a menu take as one argument an  indica‐
       tor  of	which  entry  of the menu to operate on.  These indicators are
       called indexes and may be specified in any of the following forms:

       number	   Specifies the entry numerically, where 0 corresponds to the
		   top-most entry of the menu, 1 to the entry below it, and so
		   on.

       active	   Indicates the entry that is currently active.  If no	 entry
		   is  active then this form is equivalent to none.  This form
		   may not be abbreviated.

       end	   Indicates the bottommost entry in the menu.	If  there  are
		   no  entries	in  the	 menu  then this form is equivalent to
		   none.  This form may not be abbreviated.

       last	   Same as end.

       none	   Indicates “no entry at all”; this  is  used	most  commonly
		   with	 the  activate option to deactivate all the entries in
		   the menu.  In most cases the specification of  none	causes
		   nothing to happen in the widget command.  This form may not
		   be abbreviated.

       @number	   In this form, number is treated as a	 y-coordinate  in  the
		   menu's  window;   the entry closest to that y-coordinate is
		   used.  For example, “@0” indicates the  top-most  entry  in
		   the window.

       pattern	   If  the  index does not satisfy one of the above forms then
		   this form is used.  Pattern is pattern-matched against  the
		   label  of  each  entry  in  the menu, in order from the top
		   down, until a matching entry is found.  The rules of string
		   match are used.

       The following widget commands are possible for menu widgets:

       pathName activate index
	      Change  the  state of the entry indicated by index to active and
	      redisplay it using its  active  colors.	Any  previously-active
	      entry  is deactivated.  If index is specified as none, or if the
	      specified entry is disabled, then	 the  menu  ends  up  with  no
	      active entry.  Returns an empty string.

       pathName add type ?option value option value ...?
	      Add a new entry to the bottom of the menu.  The new entry's type
	      is given by type and must be one of cascade,  checkbutton,  com‐
	      mand, radiobutton, or separator, or a unique abbreviation of one
	      of the above.  If additional arguments are present, they specify
	      the options listed in the MENU ENTRY OPTIONS section below.  The
	      add widget command returns an empty string.

       pathName cget option
	      Returns the current value of the configuration option  given  by
	      option.	Option may have any of the values accepted by the menu
	      command.

       pathName clone newPathname ?cloneType?
	      Makes a clone of the current menu named newPathName. This	 clone
	      is  a  menu  in  its own right, but any changes to the clone are
	      propagated to the original menu and vice versa. cloneType can be
	      normal,  menubar, or tearoff. Should not normally be called out‐
	      side of the Tk library. See the CLONES section for more informa‐
	      tion.

       pathName configure ?option? ?value option value ...?
	      Query  or modify the configuration options of the widget.	 If no
	      option is specified, returns a list describing all of the avail‐
	      able  options for pathName (see Tk_ConfigureInfo for information
	      on the format of this list).  If option  is  specified  with  no
	      value,  then the command returns a list describing the one named
	      option (this list will be identical to the corresponding sublist
	      of  the  value  returned	if no option is specified).  If one or
	      more option-value pairs are specified, then the command modifies
	      the  given widget option(s) to have the given value(s);  in this
	      case the command returns an empty string.	 Option may  have  any
	      of the values accepted by the menu command.

       pathName delete index1 ?index2?
	      Delete  all of the menu entries between index1 and index2 inclu‐
	      sive.   If  index2  is  omitted  then  it	 defaults  to  index1.
	      Attempts	to  delete a tear-off menu entry are ignored (instead,
	      you should change the -tearoff option  to	 remove	 the  tear-off
	      entry).

       pathName entrycget index option
	      Returns  the  current  value  of	a configuration option for the
	      entry given  by  index.	Option	may  have  any	of  the	 names
	      described in the MENU ENTRY OPTIONS section below.

       pathName entryconfigure index ?options...?
	      This command is similar to the configure command, except that it
	      applies to the options for an individual entry, whereas  config‐
	      ure applies to the options for the menu as a whole.  Options may
	      have any of the values described in the MENU ENTRY OPTIONS  sec‐
	      tion  below.   If options are specified, options are modified as
	      indicated in the	command	 and  the  command  returns  an	 empty
	      string.	If no options are specified, returns a list describing
	      the current options for entry index  (see	 Tk_ConfigureInfo  for
	      information on the format of this list).

       pathName index index
	      Returns  the  numerical index corresponding to index, or none if
	      index was specified as none.

       pathName insert index type ?option value option value ...?
	      Same as the add widget command except that it  inserts  the  new
	      entry just before the entry given by index, instead of appending
	      to the end of the menu.  The type, option, and  value  arguments
	      have  the same interpretation as for the add widget command.  It
	      is not possible to insert new menu entries before	 the  tear-off
	      entry, if the menu has one.

       pathName invoke index
	      Invoke  the  action  of the menu entry.  See the sections on the
	      individual entries above for details on what  happens.   If  the
	      menu entry is disabled then nothing happens.  If the entry has a
	      command associated with it then the result of  that  command  is
	      returned	as the result of the invoke widget command.  Otherwise
	      the result is an empty string.  Note:   invoking	a  menu	 entry
	      does  not	 automatically	unpost the menu;  the default bindings
	      normally take care of this before	 invoking  the	invoke	widget
	      command.

       pathName post x y
	      Arrange  for the menu to be displayed on the screen at the root-
	      window coordinates given by x  and  y.   These  coordinates  are
	      adjusted if necessary to guarantee that the entire menu is visi‐
	      ble on the screen.   This	 command  normally  returns  an	 empty
	      string.  If the -postcommand option has been specified, then its
	      value is executed as a Tcl script before posting	the  menu  and
	      the  result of that script is returned as the result of the post
	      widget command.  If an error returns while  executing  the  com‐
	      mand, then the error is returned without posting the menu.

       pathName postcascade index
	      Posts  the  submenu  associated  with the cascade entry given by
	      index, and unposts any previously posted submenu.	 If index does
	      not correspond to a cascade entry, or if pathName is not posted,
	      the command has no effect except to unpost any currently	posted
	      submenu.

       pathName type index
	      Returns  the type of the menu entry given by index.  This is the
	      type argument passed to the add or insert	 widget	 command  when
	      the  entry was created, such as command or separator, or tearoff
	      for a tear-off entry.

       pathName unpost
	      Unmap the window so that it is no longer displayed.  If a lower-
	      level  cascaded  menu  is	 posted, unpost that menu.  Returns an
	      empty string. This subcommand does not work on Windows  and  the
	      Macintosh,  as  those  platforms have their own way of unposting
	      menus.

       pathName xposition index
	      Returns a decimal string giving the x-coordinate within the menu
	      window of the leftmost pixel in the entry specified by index.

       pathName yposition index
	      Returns a decimal string giving the y-coordinate within the menu
	      window of the topmost pixel in the entry specified by index.

MENU ENTRY OPTIONS
       The following options are allowed on menu entries. Most options are not
       supported by all entry types.

       -activebackground value
	      Specifies	 a  background	color to use for displaying this entry
	      when it is active.  If this option  is  specified	 as  an	 empty
	      string  (the default), then the -activebackground option for the
	      overall menu is used.  If the tk_strictMotif variable  has  been
	      set  to  request	strict	Motif  compliance, then this option is
	      ignored and the -background option is used in its	 place.	  This
	      option is not available for separator or tear-off entries.

       -activeforeground value
	      Specifies	 a  foreground	color to use for displaying this entry
	      when it is active.  If this option  is  specified	 as  an	 empty
	      string  (the default), then the -activeforeground option for the
	      overall menu is used.  This option is not available for  separa‐
	      tor or tear-off entries.

       -accelerator value
	      Specifies	 a  string  to	display	 at the right side of the menu
	      entry.  Normally describes  an  accelerator  keystroke  sequence
	      that may be typed to invoke the same function as the menu entry.
	      This option is not available for separator or tear-off entries.

       -background value
	      Specifies a background color to use for  displaying  this	 entry
	      when  it	is  in the normal state (neither active nor disabled).
	      If this option is specified as an empty  string  (the  default),
	      then  the -background option for the overall menu is used.  This
	      option is not available for separator or tear-off entries.

       -bitmap value
	      Specifies a bitmap to display in the menu instead of  a  textual
	      label,  in  any  of  the	forms  accepted by Tk_GetBitmap.  This
	      option overrides the -label option (as controlled by  the	 -com‐
	      pound  option)  but  may be reset to an empty string to enable a
	      textual label to be displayed.  If  a  -image  option  has  been
	      specified,  it  overrides -bitmap.  This option is not available
	      for separator or tear-off entries.

       -columnbreak value
	      When this option is zero, the entry appears below	 the  previous
	      entry.  When this option is one, the entry appears at the top of
	      a new column in the menu.	 This option is ignored on Aqua/Mac OS
	      X, where menus are always a single column.

       -command value
	      Specifies	 a  Tcl	 command  to  execute  when  the menu entry is
	      invoked.	Not available for separator or tear-off entries.

       -compound value
	      Specifies whether the menu entry should display  both  an	 image
	      and  text,  and if so, where the image should be placed relative
	      to the text.  Valid values for this option are  bottom,  center,
	      left,  none,  right and top.  The default value is none, meaning
	      that the button will display either an image or text,  depending
	      on the values of the -image and -bitmap options.

       -font value
	      Specifies	 the font to use when drawing the label or accelerator
	      string in this entry.  If this option is specified as  an	 empty
	      string  (the default) then the -font option for the overall menu
	      is used.	This option is not available for separator or tear-off
	      entries.

       -foreground value
	      Specifies	 a  foreground	color to use for displaying this entry
	      when it is in the normal state (neither  active  nor  disabled).
	      If  this	option	is specified as an empty string (the default),
	      then the -foreground option for the overall menu is used.	  This
	      option is not available for separator or tear-off entries.

       -hidemargin value
	      Specifies	 whether the standard margins should be drawn for this
	      menu entry. This is useful when creating palette with images  in
	      them,  i.e.,  color palettes, pattern palettes, etc. 1 indicates
	      that the margin for the entry is hidden; 0 means that the margin
	      is used.

       -image value
	      Specifies	 an  image  to	display	 in the menu instead of a text
	      string or bitmap.	 The image must have been created by some pre‐
	      vious  invocation	 of  image  create.  This option overrides the
	      -label and -bitmap  options  (as	controlled  by	the  -compound
	      option)  but may be reset to an empty string to enable a textual
	      or bitmap label to be displayed.	This option is	not  available
	      for separator or tear-off entries.

       -indicatoron value
	      Available	 only  for checkbutton and radiobutton entries.	 Value
	      is a boolean that determines whether or not the indicator should
	      be displayed.

       -label value
	      Specifies	 a  string  to	display as an identifying label in the
	      menu entry.  Not available for separator or tear-off entries.

       -menu value
	      Available only for cascade entries.  Specifies the path name  of
	      the  submenu  associated with this entry.	 The submenu must be a
	      child of the menu.

       -offvalue value
	      Available only for checkbutton entries.  Specifies the value  to
	      store in the entry's associated variable when the entry is dese‐
	      lected.

       -onvalue value
	      Available only for checkbutton entries.  Specifies the value  to
	      store  in	 the  entry's  associated  variable  when the entry is
	      selected.

       -selectcolor value
	      Available only for checkbutton and radiobutton entries.	Speci‐
	      fies  the	 color	to  display in the indicator when the entry is
	      selected.	 If the value is an empty string  (the	default)  then
	      the  -selectcolor	 option	 for the menu determines the indicator
	      color.

       -selectimage value
	      Available only for checkbutton and radiobutton entries.	Speci‐
	      fies  an	image  to display in the entry (in place of the -image
	      option) when it is selected.  Value is the  name	of  an	image,
	      which  must  have	 been  created	by some previous invocation of
	      image create.  This option is ignored unless the	-image	option
	      has been specified.

       -state value
	      Specifies one of three states for the entry:  normal, active, or
	      disabled.	 In normal state the  entry  is	 displayed  using  the
	      -foreground  option for the menu and the -background option from
	      the entry or the menu.  The active state is typically used  when
	      the  pointer  is	over  the entry.  In active state the entry is
	      displayed using the -activeforeground option for the menu	 along
	      with  the	 -activebackground  option  from  the entry.  Disabled
	      state means that the entry should be insensitive:	  the  default
	      bindings	will  refuse to activate or invoke the entry.  In this
	      state the entry is displayed  according  to  the	-disabledfore‐
	      ground  option  for the menu and the -background option from the
	      entry.  This option is not available for separator entries.

       -underline value
	      Specifies the integer index of a character to underline  in  the
	      entry.   This option is also queried by the default bindings and
	      used to implement keyboard  traversal.   0  corresponds  to  the
	      first  character	of  the	 text displayed in the entry, 1 to the
	      next character, and so on.  If a bitmap or image is displayed in
	      the  entry  then	this  option  is  ignored.  This option is not
	      available for separator or tear-off entries.

       -value value
	      Available only for radiobutton entries.  Specifies the value  to
	      store  in	 the  entry's  associated  variable  when the entry is
	      selected.	 If an empty string  is	 specified,  then  the	-label
	      option for the entry as the value to store in the variable.

       -variable value
	      Available	 only for checkbutton and radiobutton entries.	Speci‐
	      fies the name of a global variable to  set  when	the  entry  is
	      selected.	 For checkbutton entries the variable is also set when
	      the entry is deselected.	For radiobutton entries, changing  the
	      variable causes the currently-selected entry to deselect itself.

	      For  checkbutton	entries,  the  default value of this option is
	      taken from the -label option, and for radiobutton entries a sin‐
	      gle  fixed  value is used. It is recommended that you always set
	      the -variable option when creating either	 a  checkbutton	 or  a
	      radiobutton.

MENU CONFIGURATIONS
       The default bindings support four different ways of using menus:

       Pulldown Menus in Menubar
	      This is the most common case. You create a menu widget that will
	      become the menu bar. You then add cascade entries to this	 menu,
	      specifying the pull down menus you wish to use in your menu bar.
	      You then create all of the pulldowns. Once you have  done	 this,
	      specify the menu using the -menu option of the toplevel's widget
	      command. See the toplevel manual entry for details.

       Pulldown Menus in Menu Buttons
	      This is the compatible way to do	menu  bars.   You  create  one
	      menubutton  widget  for  each  top-level menu, and typically you
	      arrange a series of menubuttons in a row in  a  menubar  window.
	      You  also	 create the top-level menus and any cascaded submenus,
	      and tie them together with -menu options in menubuttons and cas‐
	      cade  menu  entries.   The top-level menu must be a child of the
	      menubutton, and each submenu must be a child of  the  menu  that
	      refers  to  it.	Once  you have done this, the default bindings
	      will allow users to traverse and invoke the tree	of  menus  via
	      its menubutton;  see the menubutton manual entry for details.

       Popup Menus
	      Popup  menus  typically post in response to a mouse button press
	      or keystroke.  You create the popup menus and any cascaded  sub‐
	      menus,  then  you call the tk_popup procedure at the appropriate
	      time to post the top-level menu.

       Option Menus
	      An option menu consists of a menubutton with an associated  menu
	      that  allows  you	 to select one of several values.  The current
	      value is displayed in the menubutton and is  also	 stored	 in  a
	      global  variable.	  Use  the  tk_optionMenu  procedure to create
	      option menubuttons and their menus.

       Torn-off Menus
	      You create a torn-off menu by invoking the tear-off entry at the
	      top of an existing menu.	The default bindings will create a new
	      menu that is a copy of the original menu	and  leave  it	perma‐
	      nently  posted as a top-level window.  The torn-off menu behaves
	      just the same as the original menu.

DEFAULT BINDINGS
       Tk automatically creates class bindings for menus that  give  them  the
       following default behavior:

       [1]    When  the	 mouse	enters	a menu, the entry underneath the mouse
	      cursor activates;	 as the	 mouse	moves  around  the  menu,  the
	      active entry changes to track the mouse.

       [2]    When  the	 mouse	leaves	a  menu all of the entries in the menu
	      deactivate, except in the special case  where  the  mouse	 moves
	      from a menu to a cascaded submenu.

       [3]    When a button is released over a menu, the active entry (if any)
	      is invoked.  The menu also unposts unless it is a torn-off menu.

       [4]    The Space and Return keys invoke the active entry and unpost the
	      menu.

       [5]    If any of the entries in a menu have letters underlined with the
	      -underline option, then pressing one of the  underlined  letters
	      (or  its upper-case or lower-case equivalent) invokes that entry
	      and unposts the menu.

       [6]    The Escape key aborts  a	menu  selection	 in  progress  without
	      invoking	any  entry.   It  also unposts the menu unless it is a
	      torn-off menu.

       [7]    The Up and Down keys activate the next higher or lower entry  in
	      the menu.	 When one end of the menu is reached, the active entry
	      wraps around to the other end.

       [8]    The Left key moves to the next menu to the left.	If the current
	      menu is a cascaded submenu, then the submenu is unposted and the
	      current menu entry becomes the cascade entry in the parent.   If
	      the  current  menu is a top-level menu posted from a menubutton,
	      then the current menubutton is unposted and the next  menubutton
	      to  the  left  is posted.	 Otherwise the key has no effect.  The
	      left-right order of menubuttons is determined by their  stacking
	      order:   Tk assumes that the lowest menubutton (which by default
	      is the first one created) is on the left.

       [9]    The Right key moves to the next menu to the right.  If the  cur‐
	      rent  entry  is  a cascade entry, then the submenu is posted and
	      the  current menu entry becomes the first entry in the  submenu.
	      Otherwise,  if  the  current  menu was posted from a menubutton,
	      then the current menubutton is unposted and the next  menubutton
	      to the right is posted.

       Disabled	 menu  entries	are  non-responsive:  they do not activate and
       they ignore mouse button presses and releases.

       Several of the bindings make use of the	command	 tk_menuSetFocus.   It
       saves  the  current  focus and sets the focus to its pathName argument,
       which is a menu widget.

       The behavior of menus can be changed by defining new bindings for indi‐
       vidual widgets or by redefining the class bindings.

BUGS
       At  present  it	is  not possible to use the option database to specify
       values for the options to individual entries.

SEE ALSO
       bind(n), menubutton(n), ttk::menubutton(n), toplevel(n)

KEYWORDS
       menu, widget

Tk				      4.1			       menu(n)
[top]

List of man pages available for OpenMandriva

Copyright (c) for man pages and the logo by the respective OS vendor.

For those who want to learn more, the polarhome community provides shell access and support.

[legal] [privacy] [GNU] [policy] [cookies] [netiquette] [sponsors] [FAQ]
Tweet
Polarhome, production since 1999.
Member of Polarhome portal.
Based on Fawad Halim's script.
....................................................................
Vote for polarhome
Free Shell Accounts :: the biggest list on the net