1mNAME0m
       button - Create and manipulate button widgets

1mSYNOPSIS0m
       1mbutton 4m22mpathName24m ?4moptions24m?

1mSTANDARD OPTIONS0m
       1m-activebackground     -cursor              -highlightthickness-takefocus0m
       1m-activeforeground     -disabledforeground  -image-text0m
       1m-anchor               -font                -justify-textvariable0m
       1m-background           -foreground          -padx-underline0m
       1m-bitmap               -highlightbackground -pady-wraplength0m
       1m-borderwidth          -highlightcolor      -relief0m

       See the 1moptions 22mmanual entry for details on the standard options.

1mWIDGET-SPECIFIC OPTIONS0m
       Command-Line Name:1m-command0m
       Database Name:  1mcommand0m
       Database Class: 1mCommand0m

              Specifies a Tcl command to associate with the button.  This com-
              mand is typically invoked when mouse button 1 is  released  over
              the button window.

       Command-Line Name:1m-default0m
       Database Name:  1mdefault0m
       Database Class: 1mDefault0m

              Specifies  one  of  three  states  for the default ring: 1mnormal22m,
              1mactive22m, or 1mdisabled22m.  In active state, the button is drawn  with
              the  platform specific appearance for a default button.  In nor-
              mal state, the  button  is  drawn  with  the  platform  specific
              appearance  for  a  non-default  button, leaving enough space to
              draw the default  button  appearance.   The  normal  and  active
              states  will  result  in  buttons of the same size.  In disabled
              state, the button is drawn with the non-default  button  appear-
              ance without leaving space for the default appearance.  The dis-
              abled state may result in  a  smaller  button  than  the  active
              state.  ring.

       Command-Line Name:1m-height0m
       Database Name:  1mheight0m
       Database Class: 1mHeight0m

              Specifies  a  desired  height  for  the  button.  If an image or
              bitmap is being displayed in the button then  the  value  is  in
              screen units (i.e. any of the forms acceptable to 1mTk_GetPixels22m);
              for text it is in lines of text.  If this  option  isn't  speci-
              fied,  the  button's desired height is computed from the size of
              the image or bitmap or text being displayed in it.

       Command-Line Name:1m-state0m
       Database Name:  1mstate0m
       Database Class: 1mState0m

              Specifies one of three states for the button:   1mnormal22m,  1mactive22m,
              or  1mdisabled22m.  In normal state the button is displayed using the
              1mforeground 22mand 1mbackground 22moptions.  The active  state  is  typi-
              cally used when the pointer is over the button.  In active state
              the button is displayed using the 1mactiveForeground  22mand  1mactive-0m
              1mBackground 22moptions.  Disabled state means that the button should
              be insensitive:  the default bindings will  refuse  to  activate
              the  widget and will ignore mouse button presses.  In this state
              the 1mdisabledForeground 22mand 1mbackground 22moptions determine how  the
              button is displayed.

       Command-Line Name:1m-width0m
       Database Name:  1mwidth0m
       Database Class: 1mWidth0m

              Specifies a desired width for the button.  If an image or bitmap
              is being displayed in the button then the  value  is  in  screen
              units  (i.e.  any  of the forms acceptable to 1mTk_GetPixels22m); for
              text it is in characters.  If this option isn't  specified,  the
              button's desired width is computed from the size of the image or
              bitmap or text being displayed in it.


1mDESCRIPTION0m
       The 1mbutton 22mcommand creates a new window (given by  the  4mpathName24m  argu-
       ment) and makes it into a button widget.  Additional options, described
       above, may be specified on the command line or in the  option  database
       to  configure aspects of the button such as its colors, font, text, and
       initial relief.  The 1mbutton 22mcommand returns its 4mpathName24m argument.   At
       the  time  this command is invoked, there must not exist a window named
       4mpathName24m, but 4mpathName24m's parent must exist.

       A button is a widget that displays a textual string, bitmap  or  image.
       If  text  is  displayed,  it  must  all be in a single font, but it can
       occupy multiple lines on the screen (if  it  contains  newlines  or  if
       wrapping  occurs because of the 1mwrapLength 22moption) and one of the char-
       acters may optionally be underlined using the 1munderline 22moption.  It can
       display  itself  in  either  of  three different ways, according to the
       1mstate 22moption; it can be made to appear raised, sunken, or flat; and  it
       can  be  made  to  flash.   When a user invokes the button (by pressing
       mouse button 1 with the cursor over the button), then the  Tcl  command
       specified in the 1m-command 22moption is invoked.


1mWIDGET COMMAND0m
       The  1mbutton  22mcommand  creates a new Tcl command whose name is 4mpathName24m.
       This command may be used to invoke various operations  on  the  widget.
       It has the following general form:
              4mpathName24m 4moption24m ?4marg24m 4marg24m 4m...24m?
       4mOption24m  and  the 4marg24ms determine the exact behavior of the command.  The
       following commands are possible for button widgets:

       4mpathName24m 1mcget 4m22moption0m
              Returns the current value of the configuration option  given  by
              4moption24m.   4mOption24m may have any of the values accepted by the 1mbut-0m
              1mton 22mcommand.

       4mpathName24m 1mconfigure 22m?4moption24m? ?4mvalue24m 4moption24m 4mvalue24m 4m...24m?
              Query or modify the configuration options of the widget.  If  no
              4moption24m is specified, returns a list describing all of the avail-
              able options for 4mpathName24m (see 1mTk_ConfigureInfo 22mfor  information
              on  the  format  of  this list).  If 4moption24m is specified with no
              4mvalue24m, 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 4moption24m is  specified).   If  one  or
              more 4moption-value24m 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.  4mOption24m may have any
              of the values accepted by the 1mbutton 22mcommand.

       4mpathName24m 1mflash0m
              Flash the button.  This is accomplished by redisplaying the but-
              ton several times, alternating between active and normal colors.
              At the end of the flash the button is  left  in  the  same  nor-
              mal/active  state as when the command was invoked.  This command
              is ignored if the button's state is 1mdisabled22m.

       4mpathName24m 1minvoke0m
              Invoke the Tcl command associated with the button, if  there  is
              one.  The return value is the return value from the Tcl command,
              or an empty string if there is no command  associated  with  the
              button.   This  command is ignored if the button's state is 1mdis-0m
              1mabled22m.


1mDEFAULT BINDINGS0m
       Tk automatically creates class bindings  for  buttons  that  give  them
       default behavior:

       [1]    A button activates whenever the mouse passes over it and deacti-
              vates whenever the mouse leaves the button.  Under Windows, this
              binding is only active when mouse button 1 has been pressed over
              the button.

       [2]    A button's relief is changed to sunken whenever mouse  button  1
              is  pressed  over  the button, and the relief is restored to its
              original value when button 1 is later released.

       [3]    If mouse button 1 is pressed over a button  and  later  released
              over  the  button, the button is invoked.  However, if the mouse
              is not over the button when button 1 is released, then no  invo-
              cation occurs.

       [4]    When a button has the input focus, the space key causes the but-
              ton to be invoked.

       If the button's state is 1mdisabled 22mthen none of the above actions occur:
       the button is completely non-responsive.

       The  behavior  of  buttons  can be changed by defining new bindings for
       individual widgets or by redefining the class bindings.


1mKEYWORDS0m
