dwww Home | Manual pages | Find package

Button(3pm)           User Contributed Perl Documentation           Button(3pm)

NAME
       Tk::Button - Create and manipulate Button widgets

SYNOPSIS
       $button = $parent->Button(?options?);

STANDARD OPTIONS
       -activebackground -activeforeground -anchor -background -bitmap
       -borderwidth -compound -cursor -disabledforeground -font -foreground
       -highlightbackground -highlightcolor -highlightthickness -image -justify
       -padx -pady -relief -repeatdelay -repeatinterval -takefocus -text
       -textvariable -underline -wraplength

       See Tk::options for details of the standard options.

WIDGET-SPECIFIC OPTIONS
       Name:     command
       Class:    Command
       Switch:   -command
           Specifies  a  Perl/Tk  callback  to associate with the button.  This
           command is typically invoked when mouse button 1  is  released  over
           the button window.

       Command-Line Name: -compound
       Database Name:  compound
       Database Class: Compound
           Specifies  whether the button 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.

       Name:     default
       Class:    Default
       Switch:   -default
           Specifies one of three states for the default ring: normal,  active,
           or disabled.  In active state, the button is drawn with the platform
           specific  appearance  for  a  default  button.  In normal 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  appearance  without  leaving  space for the default
           appearance.  The disabled state may result in a smaller button  than
           the active state.  ring.

       Name:     height
       Class:    Height
       Switch:   -height
           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 Tk_GetPixels); for text  it  is
           in  lines  of  text.   If  this option isn't specified, the button's
           desired height is computed from the size of the image or  bitmap  or
           text being displayed in it.

       Command-Line Name: -overrelief
       Database Name:  overRelief
       Database Class: OverRelief
           Specifies  an alternative relief for the button, to be used when the
           mouse  cursor  is  over the widget.  This option can be used to make
           toolbar  buttons,  by configuring -relief flat  -overrelief  raised.
           If  the  value  of  this  option  is  the  empty   string,   then no
           alternative relief is used when the mouse cursor is over the button.
           The empty string is the default value.

       Name:     state
       Class:    State
       Switch:   -state
           Specifies one of three states for the button:   normal,  active,  or
           disabled.   In  normal  state  the  button  is  displayed  using the
           foreground and background options.  The active  state  is  typically
           used  when  the  pointer  is  over  the button.  In active state the
           button is displayed using the activeForeground and  activeBackground
           options.    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
           disabledForeground and background options determine how  the  button
           is displayed.

       Name:     width
       Class:    Width
       Switch:   -width
           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 Tk_GetPixels); 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.

DESCRIPTION
       The Button method creates a new window (given by the  $widget  argument)
       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  button command returns its $widget argument.  At
       the time this command is invoked, there must not exist  a  window  named
       $widget, but $widget'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 -wraplength option) and one of the characters may
       optionally be underlined using the -underline option.   It  can  display
       itself  in  either  of  three  different  ways,  according to the -state
       option; 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 perl/Tk callback specified
       in the -command option is invoked.

WIDGET METHODS
       The Button method creates a widget object.   This  object  supports  the
       configure and cget methods described in Tk::options which can be used to
       enquire  and  modify  the  options  described  above.   The  widget also
       inherits all the methods provided by the generic Tk::Widget class.

       The following additional methods are available for button widgets:

       $button->flash
           Flash the button.  This is accomplished by redisplaying  the  button
           several times, alternating between active and normal colors.  At the
           end  of the flash the button is left in the same normal/active state
           as when the command was invoked.  This command  is  ignored  if  the
           button's state is disabled.

       $button->invoke
           Invoke  the callback associated with the buttons -command option, if
           there is one.  The  return  value  is  the  return  value  from  the
           callback,  or the undefined value if there is no callback associated
           with the button.  This command is ignored if the button's  state  is
           disabled.

DEFAULT BINDINGS
       Tk  automatically  creates  class  bindings  for  buttons that give them
       default behavior:

       [1] A button activates whenever the mouse passes over it and deactivates
           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 invocation
           occurs.

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

           If  the  button's  state  is disabled then 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.

KEYWORDS
       button, widget

perl v5.40.1                       2025-04-13                       Button(3pm)

Generated by dwww version 1.16 on Sat Oct 3 06:47:22 CEST 2026.