289 lines
		
	
	
		
			14 KiB
		
	
	
	
		
			HTML
		
	
	
	
			
		
		
	
	
			289 lines
		
	
	
		
			14 KiB
		
	
	
	
		
			HTML
		
	
	
	
<HTML><HEAD><TITLE>Tk Built-In Commands - checkbutton manual page</TITLE></HEAD>
 | 
						|
<BODY bgcolor = #c3c3ff>
 | 
						|
<H2><IMG ALIGN=BOTTOM SRC="./Img/ManPageBlue.gif"> checkbutton</H2>
 | 
						|
<I>Create and manipulate checkbutton widgets</I><P><IMG ALIGN=TOP SRC="./Img/line-red.gif">
 | 
						|
<H3><A NAME="M2">SYNOPSIS</A></H3>
 | 
						|
(<B>checkbutton</B><I> widget-name </I>?<I>options</I>?)<BR>
 | 
						|
<H3><A NAME="M3">STANDARD OPTIONS</A></H3>
 | 
						|
<PRE>
 | 
						|
<B><A HREF="options.n.html#M:activebackground">:activebackground</A></B>                      <B><A HREF="options.n.html#M:activeforeground">:activeforeground</A></B> 
 | 
						|
<B><A HREF="options.n.html#M:anchor">:anchor</A></B>                                <B><A HREF="options.n.html#M:background">:background</A></B> 
 | 
						|
<B><A HREF="options.n.html#M:bitmap">:bitmap</A></B>                                <B><A HREF="options.n.html#M:borderwidth">:borderwidth</A></B> 
 | 
						|
<B><A HREF="options.n.html#M:cursor">:cursor</A></B>                                <B><A HREF="options.n.html#M:disabledforeground">:disabledforeground</A></B> 
 | 
						|
<B><A HREF="options.n.html#M:font">:font</A></B>                                  <B><A HREF="options.n.html#M:foreground">:foreground</A></B> 
 | 
						|
<B><A HREF="options.n.html#M:highlightbackground">:highlightbackground</A></B>                   <B><A HREF="options.n.html#M:highlightcolor">:highlightcolor</A></B> 
 | 
						|
<B><A HREF="options.n.html#M:highlightthickness">:highlightthickness</A></B>                    <B><A HREF="options.n.html#M:image">:image</A></B> 
 | 
						|
<B><A HREF="options.n.html#M:justify">:justify</A></B>                               <B><A HREF="options.n.html#M:padx">:padx</A></B> 
 | 
						|
<B><A HREF="options.n.html#M:pady">:pady</A></B>                                  <B><A HREF="options.n.html#M:relief">:relief</A></B> 
 | 
						|
<B><A HREF="options.n.html#M:takefocus">:takefocus</A></B>                             <B><A HREF="options.n.html#M:text">:text</A></B> 
 | 
						|
<B><A HREF="options.n.html#M:textvariable">:textvariable</A></B>                          <B><A HREF="options.n.html#M:underline">:underline</A></B> 
 | 
						|
<B><A HREF="options.n.html#M:wraplength">:wraplength</A></B>                           
 | 
						|
</PRE>
 | 
						|
<H3><A NAME="M27">WIDGET-SPECIFIC OPTIONS</A></H3>
 | 
						|
<DL>
 | 
						|
<P>
 | 
						|
<DT><I>Name</I>:            <B>command</B>
 | 
						|
<DT><I>Class</I>:           <B>Command</B>
 | 
						|
<DT><I>Option keyword</I>:  <B><A NAME="M28">:command</A></B>
 | 
						|
<DT><I>STklos slot name</I>: <B>command</B>
 | 
						|
<DD>Specifies a STk procedure to associate with the button.  This procedure
 | 
						|
is typically invoked when mouse button 1 is released over the button
 | 
						|
window.  The button's global variable (<B>:variable</B> option) will
 | 
						|
be updated before the procedure is invoked.
 | 
						|
<P>
 | 
						|
<P>
 | 
						|
<DT><I>Name</I>:            <B>height</B>
 | 
						|
<DT><I>Class</I>:           <B>Height</B>
 | 
						|
<DT><I>Option keyword</I>:  <B><A NAME="M29">:height</A></B>
 | 
						|
<DT><I>STklos slot name</I>: <B>height</B>
 | 
						|
<DD>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 <B>Tk_GetPixels</B>);
 | 
						|
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.
 | 
						|
<P>
 | 
						|
<P>
 | 
						|
<DT><I>Name</I>:            <B>indicatorOn</B>
 | 
						|
<DT><I>Class</I>:           <B>IndicatorOn</B>
 | 
						|
<DT><I>Option keyword</I>:  <B><A NAME="M30">:indicatoron</A></B>
 | 
						|
<DT><I>STklos slot name</I>: <B>indicator-on</B>
 | 
						|
<DD>Specifies whether or not the indicator should be drawn.  Must be a
 | 
						|
proper boolean value.  If false, the <B>relief</B> option is
 | 
						|
ignored and the widget's relief is always sunken if the widget is
 | 
						|
selected and raised otherwise.
 | 
						|
<P>
 | 
						|
<P>
 | 
						|
<DT><I>Name</I>:            <B>offValue</B>
 | 
						|
<DT><I>Class</I>:           <B>Value</B>
 | 
						|
<DT><I>Option keyword</I>:  <B><A NAME="M31">:offvalue</A></B>
 | 
						|
<DT><I>STklos slot name</I>: <B>off-value</B>
 | 
						|
<DD>Specifies value to store in the button's associated variable whenever
 | 
						|
this button is deselected.  Defaults to <B>#f</B>.
 | 
						|
<P>
 | 
						|
<P>
 | 
						|
<DT><I>Name</I>:            <B>onValue</B>
 | 
						|
<DT><I>Class</I>:           <B>Value</B>
 | 
						|
<DT><I>Option keyword</I>:  <B><A NAME="M32">:onvalue</A></B>
 | 
						|
<DT><I>STklos slot name</I>: <B>on-value</B>
 | 
						|
<DD>Specifies value to store in the button's associated variable whenever
 | 
						|
this button is selected.  Defaults to <B>#t</B>.
 | 
						|
<P>
 | 
						|
<P>
 | 
						|
<DT><I>Name</I>:            <B>selectColor</B>
 | 
						|
<DT><I>Class</I>:           <B>Background</B>
 | 
						|
<DT><I>Option keyword</I>:  <B><A NAME="M33">:selectcolor</A></B>
 | 
						|
<DT><I>STklos slot name</I>: <B>select-color</B>
 | 
						|
<DD>Specifies a background color to use when the button is selected.
 | 
						|
If <B>indicatorOn</B> is true then the color applicies to the indicator.
 | 
						|
If <B>indicatorOn</B> is false, this color is used as the background
 | 
						|
for the entire widget, in place of <B>background</B> or <B>activeBackground</B>,
 | 
						|
whenever the widget is selected.
 | 
						|
If specified as an empty string then no special color is used for
 | 
						|
displaying when the widget is selected.
 | 
						|
<P>
 | 
						|
<P>
 | 
						|
<DT><I>Name</I>:            <B>selectImage</B>
 | 
						|
<DT><I>Class</I>:           <B>SelectImage</B>
 | 
						|
<DT><I>Option keyword</I>:  <B><A NAME="M34">:selectimage</A></B>
 | 
						|
<DT><I>STklos slot name</I>: <B>select-image</B>
 | 
						|
<DD>Specifies an image to display (in place of the <B>image</B> option)
 | 
						|
when the checkbutton is selected.
 | 
						|
This option is ignored unless the <B>image</B> option has been
 | 
						|
specified.
 | 
						|
<P>
 | 
						|
<P>
 | 
						|
<DT><I>Name</I>:            <B>state</B>
 | 
						|
<DT><I>Class</I>:           <B>State</B>
 | 
						|
<DT><I>Option keyword</I>:  <B><A NAME="M35">:state</A></B>
 | 
						|
<DT><I>STklos slot name</I>: <B>state</B>
 | 
						|
<DD>Specifies one of three states for the checkbutton:  <B>normal</B>, <B>active</B>,
 | 
						|
or <B>disabled</B>.  In normal state the checkbutton is displayed using the
 | 
						|
<B>foreground</B> and <B>background</B> options.  The active state is
 | 
						|
typically used when the pointer is over the checkbutton.  In active state
 | 
						|
the checkbutton is displayed using the <B>activeForeground</B> and
 | 
						|
<B>activeBackground</B> options.  Disabled state means that the checkbutton
 | 
						|
should be insensitive:  the default bindings will refuse to activate
 | 
						|
the widget and will ignore mouse button presses.
 | 
						|
In this state the <B>disabledForeground</B> and
 | 
						|
<B>background</B> options determine how the checkbutton is displayed.
 | 
						|
<P>
 | 
						|
<P>
 | 
						|
<DT><I>Name</I>:            <B>stringvalue</B>
 | 
						|
<DT><I>Class</I>:           <B>StringValue</B>
 | 
						|
<DT><I>Option keyword</I>:  <B><A NAME="M36">:stringvalue</A></B>
 | 
						|
<DT><I>STklos slot name</I>: <B>string-value</B>
 | 
						|
<DD>Specifies if the value set to <B>variable</B> by <B>:offvalue</B> or 
 | 
						|
<B>:onvalue</B> must be <I>stringified</I>. For instance, with
 | 
						|
<P>
 | 
						|
</DL>
 | 
						|
<UL>
 | 
						|
<PRE>(checkbutton '.c :text "Try" :variable 'x :stringvalue #t 
 | 
						|
                 :onvalue 10 :offvalue 20)</PRE>
 | 
						|
the variabe <B>x</B> var is set to <I>"10"</I> or <I>"20"</I>, whereas
 | 
						|
with 
 | 
						|
<PRE>(checkbutton '.c :text "Try" :variable 'x :stringvalue #f 
 | 
						|
                 :onvalue 10 :offvalue 20)</PRE>
 | 
						|
it is set to 10 or 20. Default value for <B>:stringvalue</B> is <B>#t</B>. 
 | 
						|
</UL>
 | 
						|
<DL>
 | 
						|
<P>
 | 
						|
<DT><I>Name</I>:            <B>variable</B>
 | 
						|
<DT><I>Class</I>:           <B>Variable</B>
 | 
						|
<DT><I>Option keyword</I>:  <B><A NAME="M37">:variable</A></B>
 | 
						|
<DT><I>STklos slot name</I>: <B>variable</B>
 | 
						|
<DD>Specifies name of global variable to set to indicate whether
 | 
						|
or not this button is selected.  Defaults to the name of the
 | 
						|
button within its parent (i.e. the last element of the button
 | 
						|
window's path name).
 | 
						|
<P>
 | 
						|
<P>
 | 
						|
<DT><I>Name</I>:            <B>width</B>
 | 
						|
<DT><I>Class</I>:           <B>Width</B>
 | 
						|
<DT><I>Option keyword</I>:  <B><A NAME="M38">:width</A></B>
 | 
						|
<DT><I>STklos slot name</I>: <B>width</B>
 | 
						|
<DD>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 <B>Tk_GetPixels</B>);
 | 
						|
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.
 | 
						|
<P>
 | 
						|
</DL>
 | 
						|
<H3><A NAME="M39">DESCRIPTION</A></H3>
 | 
						|
The <B>checkbutton</B> procedure creates a new window (given by the
 | 
						|
<I>widget-name</I> argument) and makes it into a checkbutton widget.
 | 
						|
Additional
 | 
						|
options, described above, may be specified on the procedure line
 | 
						|
or in the option database
 | 
						|
to configure aspects of the checkbutton such as its colors, font,
 | 
						|
text, and initial relief.  The <B>checkbutton</B> procedure returns its
 | 
						|
<I>widget-name</I> argument.  At the time this procedure is invoked,
 | 
						|
there must not exist a window named <I>widget-name</I>, but
 | 
						|
<I>widget-name</I>'s parent must exist.
 | 
						|
<P>
 | 
						|
A checkbutton is a widget
 | 
						|
that displays a textual string, bitmap or image
 | 
						|
and a square called an <I>indicator</I>.
 | 
						|
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 <B>wrapLength</B> option) and
 | 
						|
one of the characters may optionally be underlined using the
 | 
						|
<B>underline</B> option.
 | 
						|
A checkbutton has
 | 
						|
all of the behavior of a simple button, including the
 | 
						|
following: it can display itself in either of three different
 | 
						|
ways, according to the <B>state</B> option;
 | 
						|
it can be made to appear
 | 
						|
raised, sunken, or flat; it can be made to flash; and it invokes
 | 
						|
a STk procedure whenever mouse button 1 is clicked over the
 | 
						|
checkbutton.
 | 
						|
<P>
 | 
						|
In addition, checkbuttons can be <I>selected</I>.
 | 
						|
If a checkbutton is selected then the indicator is normally
 | 
						|
drawn with a sunken relief and a special color, and
 | 
						|
a STk variable associated with the checkbutton is set to a particular
 | 
						|
value (normally 1).
 | 
						|
If the checkbutton is not selected, then the indicator is drawn with a
 | 
						|
raised relief and no special color, and the associated variable is
 | 
						|
set to a different value (typically 0).
 | 
						|
By default, the name of the variable associated with a checkbutton is the
 | 
						|
same as the <I>name</I> used to create the checkbutton.
 | 
						|
The variable name, and the ``on'' and ``off'' values stored in it,
 | 
						|
may be modified with options on the procedure line or in the option
 | 
						|
database.
 | 
						|
Configuration options may also be used to modify the way the
 | 
						|
indicator is displayed (or whether it is displayed at all).
 | 
						|
By default a checkbutton is configured to select and deselect
 | 
						|
itself on alternate button clicks.
 | 
						|
In addition, each checkbutton monitors its associated variable and
 | 
						|
automatically selects and deselects itself when the variables value
 | 
						|
changes to and from the button's ``on'' value.
 | 
						|
 | 
						|
<H3><A NAME="M40">WIDGET PROCEDURE</A></H3>
 | 
						|
The <B>checkbutton</B> procedure creates a new STk procedure whose
 | 
						|
name is <I>widget-name</I>.  This
 | 
						|
procedure may be used to invoke various
 | 
						|
operations on the widget.  It has the following general form:
 | 
						|
<PRE>(<I>widget-name option </I>?<I>arg arg ...</I>?)</PRE>
 | 
						|
<I>Option</I> and the <I>arg</I>s
 | 
						|
determine the exact behavior of the procedure.  The following
 | 
						|
procedures are possible for checkbutton widgets:
 | 
						|
<P>
 | 
						|
<DL>
 | 
						|
<DT><A NAME="M41">(<I>widget-name '</I><B>cget</B> <I>option</I>)</A><DD>
 | 
						|
Returns the current value of the configuration option given
 | 
						|
by <I>option</I>.
 | 
						|
<I>Option</I> may have any of the values accepted by the <B>checkbutton</B>
 | 
						|
procedure.
 | 
						|
<P>
 | 
						|
<DT><A NAME="M42">(<I>widget-name '</I><B>configure</B> ?<I>option</I>? ?<I>value option value ...</I>?)</A><DD>
 | 
						|
Query or modify the configuration options of the widget.
 | 
						|
If no <I>option</I> is specified, returns a list describing all of
 | 
						|
the available options for <I>widget-name</I> (see <B>Tk_ConfigureInfo</B> for
 | 
						|
information on the format of this list).  If <I>option</I> is specified
 | 
						|
with no <I>value</I>, then the procedure returns a list describing the
 | 
						|
one named option (this list will be identical to the corresponding
 | 
						|
sublist of the value returned if no <I>option</I> is specified).  If
 | 
						|
one or more <I>option-value</I> pairs are specified, then the procedure
 | 
						|
modifies the given widget option(s) to have the given value(s);  in
 | 
						|
this case the procedure returns an empty list.
 | 
						|
<I>Option</I> may have any of the values accepted by the <B>checkbutton</B>
 | 
						|
procedure.
 | 
						|
<P>
 | 
						|
<DT><A NAME="M43">(<I>widget-name '</I><B>deselect</B>)</A><DD>
 | 
						|
Deselects the checkbutton and sets the associated variable to its ``off''
 | 
						|
value.
 | 
						|
<P>
 | 
						|
<DT><A NAME="M44">(<I>widget-name '</I><B>flash</B>)</A><DD>
 | 
						|
Flashes the checkbutton.  This is accomplished by redisplaying the checkbutton
 | 
						|
several times, alternating between active and normal colors.  At
 | 
						|
the end of the flash the checkbutton is left in the same normal/active
 | 
						|
state as when the procedure was invoked.
 | 
						|
This procedure is ignored if the checkbutton's state is <B>disabled</B>.
 | 
						|
<P>
 | 
						|
<DT><A NAME="M45">(<I>widget-name '</I><B>invoke</B>)</A><DD>
 | 
						|
Does just what would have happened if the user invoked the checkbutton
 | 
						|
with the mouse: toggle the selection state of the button and invoke
 | 
						|
the STk procedure associated with the checkbutton, if there is one
 | 
						|
(return value is undefined)
 | 
						|
This procedure is ignored if the checkbutton's state is <B>disabled</B>.
 | 
						|
<P>
 | 
						|
<DT><A NAME="M46">(<I>widget-name '</I><B>select</B>)</A><DD>
 | 
						|
Selects the checkbutton and sets the associated variable to its ``on''
 | 
						|
value.
 | 
						|
<P>
 | 
						|
<DT><A NAME="M47">(<I>widget-name '</I><B>toggle</B>)</A><DD>
 | 
						|
Toggles the selection state of the button, redisplaying it and
 | 
						|
modifying its associated variable to reflect the new state.
 | 
						|
 | 
						|
<P>
 | 
						|
</DL>
 | 
						|
<H3><A NAME="M48">BINDINGS</A></H3>
 | 
						|
Tk automatically creates class bindings for checkbuttons that give them
 | 
						|
the following default behavior:
 | 
						|
<OL>
 | 
						|
<LI>
 | 
						|
A checkbutton activates whenever the mouse passes over it and deactivates
 | 
						|
whenever the mouse leaves the checkbutton.
 | 
						|
<LI>
 | 
						|
When mouse button 1 is pressed over a checkbutton it is invoked (its
 | 
						|
selection state toggles and the procedure associated with the button is
 | 
						|
invoked, if there is one).
 | 
						|
<LI>
 | 
						|
When a checkbutton has the input focus, the space key causes the checkbutton
 | 
						|
to be invoked.
 | 
						|
</OL>
 | 
						|
<P>
 | 
						|
If the checkbutton's state is <B>disabled</B> then none of the above
 | 
						|
actions occur:  the checkbutton is completely non-responsive.
 | 
						|
<P>
 | 
						|
The behavior of checkbuttons can be changed by defining new bindings for
 | 
						|
individual widgets or by redefining the class bindings.
 | 
						|
 | 
						|
<H3><A NAME="M49">SEE ALSO</A></H3>
 | 
						|
<B><A HREF="./button.n.html">button</A></B>, <B><A HREF="./radiobutton.n.html">radiobutton</A></B>
 | 
						|
<P><IMG ALIGN=TOP SRC="./Img/line-red.gif">
 | 
						|
<A HREF=./STk-hlp.html><IMG ALIGN=BOTTOM SRC="./Img/RefBookBlue.gif"> Back to the <B>STk</B> main page</A>
 | 
						|
</BODY></HTML>
 |