Version 14 of The list of Tk widgets

Updated 2009-05-27 08:29:35 by LGT

Here is an attempt to write a script to display each widget available in Tk. It made the assumption that all widgets begin with a lowercase letter. But this assumption seems not valid as for instance ttk::deprecated is not a widget at all or clipboard is not listed.

 #
 # the dynamic list of Tk widgets
 # 

 puts " Tk version [package require Tk]"
 puts " ----"

 set tkCommands [lsort [info commands "::tk::\[a-z\]*"]] 

 foreach cmd $tkCommands { 
         puts [string range $cmd 6 end]
 }

 exit 

It gives :

 Tk version 8.5.7
 ----
 button
 canvas
 checkbutton
 entry
 frame
 label
 labelframe
 listbox
 mc
 mcmax
 mcmaxamp
 menubutton
 message
 panedwindow
 radiobutton
 scale
 scrollbar
 spinbox
 text
 toplevel

It works only with version 8.5 so far.


JH This completely misses the themed Tk widget set (::ttk::*).


LGT This script tries to correct this :

        #
        # the dynamic list of Tk widgets
        #

        puts " Tk version [package require Tk]"
        puts " ----"

        set tkCommands [lsort [info commands "::tk::\[a-z\]*"]]
        set ttkCommands [lsort [info commands "::ttk::\[a-z\]*"]]

        set allCommands [concat $tkCommands $ttkCommands]

        foreach cmd $allCommands {
                puts [string range $cmd 2 end]
        }

        exit 

It gives :

         Tk version 8.5.7
         ----
        tk::button
        tk::canvas
        tk::checkbutton
        tk::entry
        tk::frame
        tk::label
        tk::labelframe
        tk::listbox
        tk::mc
        tk::mcmax
        tk::mcmaxamp
        tk::menubutton
        tk::message
        tk::panedwindow
        tk::radiobutton
        tk::scale
        tk::scrollbar
        tk::spinbox
        tk::text
        tk::toplevel
        ttk::button
        ttk::checkbutton
        ttk::clickToFocus
        ttk::combobox
        ttk::copyBindings
        ttk::cursor
        ttk::deprecated
        ttk::deprecated'warning
        ttk::do'deprecate
        ttk::entry
        ttk::focusFirst
        ttk::frame
        ttk::globalGrab
        ttk::grabWindow
        ttk::label
        ttk::labelframe
        ttk::menubutton
        ttk::notebook
        ttk::paned
        ttk::panedwindow
        ttk::progressbar
        ttk::radiobutton
        ttk::releaseGrab
        ttk::scale
        ttk::scrollbar
        ttk::separator
        ttk::setCursor
        ttk::setTheme
        ttk::sizegrip
        ttk::style
        ttk::takefocus
        ttk::takesFocus
        ttk::themes
        ttk::traverseTo
        ttk::treeview

Category TK