ttk_notebook - paned container widget
ttk::notebook pathname ?options...? pathname add window ?options...? pathname insert index window ?options...?
ttk::notebook(1t) Tk Themed Widget ttk::notebook(1t)
______________________________________________________________________________
NAME
ttk::notebook - Multi-paned container widget
SYNOPSIS
ttk::notebook pathname ?options...?
pathname add window ?options...?
pathname insert index window ?options...?
______________________________________________________________________________
DESCRIPTION
A ttk::notebook widget manages a collection of windows and displays a
single one at a time. Each slave window is associated with a tab,
which the user may select to change the currently-displayed window.
STANDARD OPTIONS
-class -cursor -takefocus
-style
See the ttk_widget manual entry for details on the standard options.
WIDGET-SPECIFIC OPTIONS
Command-Line Name:-height
Database Name: height
Database Class: Height
If present and greater than zero, specifies the desired height
of the pane area (not including internal padding or tabs). Oth-
erwise, the maximum height of all panes is used.
Command-Line Name:-padding
Database Name: padding
Database Class: Padding
Specifies the amount of extra space to add around the outside of
the notebook. The padding is a list of up to four length speci-
fications left top right bottom. If fewer than four elements
are specified, bottom defaults to top, right defaults to left,
and top defaults to left. In other words, a list of three num-
bers specify the left, vertical, and right padding; a list of
two numbers specify the horizontal and the vertical padding; a
single number specifies the same padding all the way around the
widget.
Command-Line Name:-width
Database Name: width
Database Class: Width
If present and greater than zero, specifies the desired width of
the pane area (not including internal padding). Otherwise, the
maximum width of all panes is used.
TAB OPTIONS
The following options may be specified for individual notebook panes:
Command-Line Name:-state
Database Name: state
Database Class: State
Either normal, disabled or hidden. If disabled, then the tab is
not selectable. If hidden, then the tab is not shown.
Command-Line Name:-sticky
Database Name: sticky
Database Class: Sticky
Specifies how the slave window is positioned within the pane
area. Value is a string containing zero or more of the charac-
ters n, s, e, or w. Each letter refers to a side (north, south,
east, or west) that the slave window will "stick" to, as per the
grid geometry manager.
Command-Line Name:-padding
Database Name: padding
Database Class: Padding
Specifies the amount of extra space to add between the notebook
and this pane. Syntax is the same as for the widget -padding
option.
Command-Line Name:-text
Database Name: text
Database Class: Text
Specifies a string to be displayed in the tab.
Command-Line Name:-image
Database Name: image
Database Class: Image
Specifies an image to display in the tab. See ttk_widget(n) for
details.
Command-Line Name:-compound
Database Name: compound
Database Class: Compound
Specifies how to display the image relative to the text, in the
case both -text and -image are present. See label(n) for legal
values.
Command-Line Name:-underline
Database Name: underline
Database Class: Underline
Specifies the integer index (0-based) of a character to under-
line in the text string. The underlined character is used for
mnemonic activation if ttk::notebook::enableTraversal is called.
TAB IDENTIFIERS
The tabid argument to the following commands may take any of the fol-
lowing forms:
o An integer between zero and the number of tabs;
o The name of a slave window;
o A positional specification of the form "@x,y", which identifies
the tab
o The literal string "current", which identifies the currently-
selected tab; or:
o The literal string "end", which returns the number of tabs (only
valid for "pathname index").
WIDGET COMMAND
pathname add window ?options...?
Adds a new tab to the notebook. See TAB OPTIONS for the list of
available options. If window is currently managed by the note-
book but hidden, it is restored to its previous position.
pathname configure ?options?
See ttk::widget(n).
pathname cget option
See ttk::widget(n).
pathname forget tabid
Removes the tab specified by tabid, unmaps and unmanages the
associated window.
pathname hide tabid
Hides the tab specified by tabid. The tab will not be dis-
played, but the associated window remains managed by the note-
book and its configuration remembered. Hidden tabs may be
restored with the add command.
pathname identify component x y
Returns the name of the element under the point given by x and
y, or the empty string if no component is present at that loca-
tion. The following subcommands are supported:
pathname identify element x y
Returns the name of the element at the specified loca-
tion.
pathname identify tab x y
Returns the index of the tab at the specified location.
pathname index tabid
Returns the numeric index of the tab specified by tabid, or the
total number of tabs if tabid is the string "end".
pathname insert pos subwindow options...
Inserts a pane at the specified position. pos is either the
string end, an integer index, or the name of a managed subwin-
dow. If subwindow is already managed by the notebook, moves it
to the specified position. See TAB OPTIONS for the list of
available options.
pathname instate statespec ?script...?
See ttk::widget(n).
pathname select ?tabid?
Selects the specified tab. The associated slave window will be
displayed, and the previously-selected window (if different) is
unmapped. If tabid is omitted, returns the widget name of the
currently selected pane.
pathname state ?statespec?
See ttk::widget(n).
pathname tab tabid ?-option ?value ...
Query or modify the options of the specific tab. If no -option
is specified, returns a dictionary of the tab option values. If
one -option is specified, returns the value of that option.
Otherwise, sets the -options to the corresponding values. See
TAB OPTIONS for the available options.
pathname tabs
Returns the list of windows managed by the notebook, in the
index order of their associated tabs.
KEYBOARD TRAVERSAL
To enable keyboard traversal for a toplevel window containing a note-
book widget $nb, call:
ttk::notebook::enableTraversal $nb
This will extend the bindings for the toplevel window containing the
notebook as follows:
o Control-Tab selects the tab following the currently selected
one.
o Control-Shift-Tab selects the tab preceding the currently
selected one.
o Alt-K, where K is the mnemonic (underlined) character of any
tab, will select that tab.
Multiple notebooks in a single toplevel may be enabled for traversal,
including nested notebooks. However, notebook traversal only works
properly if all panes are direct children of the notebook.
VIRTUAL EVENTS
The notebook widget generates a <<NotebookTabChanged>> virtual event
after a new tab is selected.
EXAMPLE
pack [ttk::notebook .nb]
.nb add [frame .nb.f1] -text "First tab"
.nb add [frame .nb.f2] -text "Second tab"
.nb select .nb.f2
ttk::notebook::enableTraversal .nb
ATTRIBUTES
See attributes(7) for descriptions of the following attributes:
+---------------+------------------+
|ATTRIBUTE TYPE | ATTRIBUTE VALUE |
+---------------+------------------+
|Availability | runtime/tk-8 |
+---------------+------------------+
|Stability | Uncommitted |
+---------------+------------------+
SEE ALSO
ttk::widget(n), grid(n)
KEYWORDS
pane, tab
NOTES
Source code for open source software components in Oracle Solaris can
be found at https://www.oracle.com/downloads/opensource/solaris-source-
code-downloads.html.
This software was built from source available at
https://github.com/oracle/solaris-userland. The original community
source was downloaded from https://source-
forge.net/projects/tcl/files/Tcl/8.6.7/tk8.6.7-src.tar.gz/download.
Further information about this software can be found on the open source
community website at https://www.tcl.tk/.
Tk 8.5 ttk::notebook(1t)