Interactive Tablelist Cell Editing Using the combobox Package

For Tablelist Version 7.2


Csaba Nemethi


Start page


Bryan Oakley's combobox package is a library extension for Tcl/Tk versions 8.0 or higher, written in pure Tcl/Tk code.  Its download location is

Tablelist supports interactive cell editing with the aid of the combobox widget implemented in the package mentioned above.  The steps needed for using this widget for editing the cells of a given column are as follows:

  1. Register the combobox widget for interactive cell editing by invoking the tablelist::addOakleyCombobox command described below.
  2. Use the tablelist widget's columnconfigure subcommand to set the given column's -editable option to true and its -editwindow option to the value returned by the command mentioned above.  (These options are supported at cell level, too, with the aid of the cellconfigure subcommand.)

REMARK:  The arrow and scrollbar components of the temporary embedded combobox widget used for interactive cell editing will appear properly scaled, according to the display's DPI scaling level, given by the variable tablelist::scalingpct.

Contents     Start page

The tablelist::addOakleyCombobox Command

tablelist::addOakleyCombobox – Register Bryan Oakley's combobox widget for interactive cell editing
tablelist::addOakleyCombobox ?name?
This command registers Bryan Oakley's combobox widget for interactive cell editing in tablelist widgets.  The optional argument specifies the name to be used for the combobox widget as the value of the -editwindow column or cell configuration option.  It may be any string that is different from the Tk core and tile edit window names.  The default is combobox.  The command returns its name argument.
The temporary embedded combobox widget associated with the above name will be created with its -editable option set to 1.  You can use the script corresponding to the -editstartcommand tablelist configuration option to make the combobox non-editable or define validations for its entry child (whose path name can be obtained by invoking the tablelist widget's entrypath subcommand, or by appending .entry to the path name of the combobox widget, or, if using combobox version 2.3 or later, with the aid of the combobox widget's  subwidget entry  subcommand), as well as for populating its listbox component (by using the combobox widget's  list insert  subcommand).
tablelist, editing, combobox

Start page