NAME¶
Tk::Table - Scrollable 2 dimensional table of Tk widgets
SYNOPSIS¶
use Tk::Table;
$table = $parent->Table(-rows => number,
-columns => number,
-scrollbars => anchor,
-fixedrows => number,
-fixedcolumns => number,
-takefocus => boolean);
$widget = $table->Button(...);
$old = $table->put($row,$col,$widget);
$old = $table->put($row,$col,"Text"); # simple Label
$widget = $table->get($row,$col);
$cols = $table->totalColumns;
$rows = $table->totalRows;
$table->see($widget);
$table->see($row,$col);
($row,$col) = $table->Posn($widget);
DESCRIPTION¶
Tk::Table is an all-perl widget/geometry manager which allows a two dimensional
table of arbitary perl/Tk widgets to be displayed.
Entries in the Table are simply ordinary perl/Tk widgets. They should be created
with the Table as their parent. Widgets are positioned in the table using:
$table->put($row,$col,$widget)
If
$widget is not a reference it is treated as a string,
and a Lable widget is created with the string as its text.
All the widgets in each column are set to the same width - the requested width
of the widest widget in the column. Likewise, all the widgets in each row are
set to the same height - the requested height of the tallest widget in the
column.
A number of rows and/or columns can be marked as 'fixed' - and so can serve as
'headings' for the remainder the rows which are scrollable.
The requested size of the table as a whole is such that the number of rows
specified by -rows (default 10), and number of columns specified by -columns
(default 10) can be displayed.
If the Table is told it can take the keyboard focus then cursor and scroll keys
scroll the displayed widgets.
The Table will create and manage its own scrollbars if requested via
-scrollbars.
The table can be emptied using
$table->clear
the widgets which were in the table are destroyed.
The Tk::Table widget is derived from a Tk::Frame, so inherits all its configure
options.
BUGS / Snags / Possible enhancements¶
- •
- Very large Tables consume a lot of X windows.
- •
- No equivalent of pack's -anchor/-pad etc. options
SEE ALSO¶
Tk::grid, Tk::HList, Tk::TableMatrix, Tk::MListbox, Tk::Columns