labelframe - Man Page

Create and manipulate 'labelframe' labelled container widgets

Synopsis

labelframe pathName ?options?

Standard Options

-borderwidth-highlightbackground-pady
-cursor-highlightcolor-relief
-font-highlightthickness-takefocus
-foreground-padx-text

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

Widget-Specific Options

Command-Line Name:-background
Database Name:background
Database Class:Background

This option is the same as the standard -background option except that its value may also be specified as an empty string. In this case, the widget will display no background or border, and no colors will be consumed from its colormap for its background and border.

Command-Line Name:-class
Database Name:class
Database Class:Class

Specifies a class for the window. This class will be used when querying the option database for the window's other options, and it will also be used later for other purposes such as bindings. The -class option may not be changed with the configure widget command.

Command-Line Name:-colormap
Database Name:colormap
Database Class:Colormap

Specifies a colormap to use for the window. The value may be either new, in which case a new colormap is created for the window and its children, or the name of another window (which must be on the same screen and have the same visual as pathName), in which case the new window will use the colormap from the specified window. If the -colormap option is not specified, the new window uses the same colormap as its parent. This option may not be changed with the configure widget command.

Command-Line Name:-height
Database Name:height
Database Class:Height

Specifies the desired height for the window in any of the forms acceptable to Tk_GetPixels. If this option is less than or equal to zero then the window will not request any size at all.

Command-Line Name:-labelanchor
Database Name:labelAnchor
Database Class:LabelAnchor

Specifies where to place the label. A label is only displayed if the -text option is not the empty string. Valid values for this option are (listing them clockwise) nw, n, ne, en, e, es, se, s,sw, ws, w and wn. The default value is nw.

Command-Line Name:-labelwidget
Database Name:labelWidget
Database Class:LabelWidget

Specifies a widget to use as label. This overrides any -text option. The widget must exist before being used as -labelwidget and if it is not a descendant of this window, it will be raised above it in the stacking order.

Command-Line Name:-visual
Database Name:visual
Database Class:Visual

Specifies visual information for the new window in any of the forms accepted by Tk_GetVisual. If this option is not specified, the new window will use the same visual as its parent. The -visual option may not be modified with the configure widget command.

Command-Line Name:-width
Database Name:width
Database Class:Width

Specifies the desired width for the window in any of the forms acceptable to Tk_GetPixels. If this option is less than or equal to zero then the window will not request any size at all.

Description

The labelframe command creates a new window (given by the pathName argument) and makes it into a labelframe widget. Additional options, described above, may be specified on the command line or in the option database to configure aspects of the labelframe such as its background color and relief.  The labelframe command returns the path name of the new window.

A labelframe is a simple widget.  Its primary purpose is to act as a spacer or container for complex window layouts.  It has the features of a frame plus the ability to display a label.

Widget Command

The labelframe command creates a new Tcl command whose name is the same as the path name of the labelframe's window.  This command may be used to invoke various operations on the widget.  It has the following general form:

pathName option ?arg arg ...?

PathName is the name of the command, which is the same as the labelframe widget's path name.  Option and the args determine the exact behavior of the command.  The following commands are possible for frame widgets:

pathName cget option

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

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 available 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 labelframe command.

Bindings

When a new labelframe is created, it has no default event bindings: labelframes are not intended to be interactive.

Example

This shows how to build part of a GUI for a hamburger vendor. The labelframe widgets are used to organize the available choices by the kinds of things that the choices are being made over.

grid [labelframe .burger -text "Burger"] \
     [labelframe .bun    -text "Bun"] -sticky news
grid [labelframe .cheese -text "Cheese Option"] \
     [labelframe .pickle -text "Pickle Option"] -sticky news
foreach {type name val} {
    burger Beef    beef
    burger Lamb    lamb
    burger Vegetarian beans

    bun    Plain   white
    bun    Sesame  seeds
    bun    Wholemeal brown

    cheese None    none
    cheese Cheddar cheddar
    cheese Edam    edam
    cheese Brie    brie
    cheese Gruy\u00e8re gruyere
    cheese "Monterey Jack" jack

    pickle None    none
    pickle Gherkins gherkins
    pickle Onions  onion
    pickle Chili   chili
} {
    set w [radiobutton .$type.$val -text $name -anchor w \
            -variable $type -value $val]
    pack $w -side top -fill x
}
set burger beef
set bun    white
set cheese none
set pickle none

See Also

frame(n), label(n), ttk::labelframe(n)

Keywords

labelframe, widget

Referenced By

frame(n), label(n), radiobutton(n), ttk_labelframe(n).

8.4 Tk Built-In Commands