Create and display a list of items, one per line. The doc for the Tk listbox is found at: http://www.purl.org/tcl/home/man/tcl8.4/TkCmd/listbox.htm The doc for [BWidget]'s ListBox can be found at http://tcllib.sourceforge.net/BWman/ListBox.html (anyone want to describe how the two widgets differ? what other listbox widgets exist?) ** Documentation ** Other toolkits with listboxes include: * [BLT] (well, some of the add ons for BLT, anyways) * [ClassyTk] * [NexTk] * [TLC] * [Tix] ---- A simple example of the use of listbox (modified from the previous example, so that the scrollbar now works--[D. McC]) would be: #! /usr/bin/env wish listbox .lb -selectmode multiple -height 4 frame .f listbox .lb -selectmode multiple -height 4 scrollbar .sb -command [list .lb yview] .lb configure -yscrollcommand [list .sb set] .lb insert 0 sample stuff colors red yellow green pack .lb .sb -in .f -side left -expand 1 -fill both grid .f .lb itemconfigure 0 -foreground blue .lb itemconfigure 1 -foreground white .lb itemconfigure 2 -foreground black .lb itemconfigure 3 -foreground red .lb itemconfigure 4 -foreground yellow .lb itemconfigure 5 -foreground green [LV]: So, once `.lb` is created, and someone selects one of the entries, then Often someone asks how to get a listbox to take more than one selection and Often someone asks how to get a listbox to take more than one selection and people recommend they read the above reference page's information on ''-exportselection 0'' . '''CJU:''' Normally, if you have more than one listbox on the screen, selecting one listbox automatically unselects any previous selections in the all of the others. ''-exportselection 0'' is a way of getting around that at the cost of not being able to export the list element(s) to the X selection. I understand the reasoning for this behavior, but I think the default for ''-exportselection'' should be 0 instead of 1 for the listbox simply due to the confusion it can cause for newcomers of Tk and also the relative rarity of the need to copy from a listbox as opposed to a text or entry widget, for example. CJU: Normally, if you have more than one listbox on the screen, selecting one ''[MGS]'' - Note: selection is not the same as the clipboard. See: [selection] ''CJU'' - Corrected it. [MGS]: Note: selection is not the same as the clipboard. See: [selection] ---- [Tk]'s venerable [FAQ] covers several aspects of listbox management which are, [Tk]'s venerable [FAQ] covers several aspects of listbox management which are, in fact, frequently-asked. Among these are synchronization between parallel listboxes, multi-selection, ... [http://tcl.sf.net/faqs/tk/#listbox]. Also, note that people who start with listboxes often want to move to [combobox]es, [wcb], [multicolumn listbox]es (like [tablelist]), [hugecombo], [Hugelist], [virtuallist]... Also, note that people who start with listboxes often want to move to [LV]: Has anyone implemented a listbox with separators, for cases where you See also: ====== * [A little list selector]: two listboxes for selecting a subset * [A minimal minimal multi listbox widget] * [A minimal multi listboxes megawidget] * [alternate.listbox.colors] * [Bwidget Listbox Drag & Drop] * [Disabling listbox items] * [extended listbox] * [flash.listbox.selection] * [Hierarquical listbox] * [How to totally handle listbox selection] * [Hugelist] & [Virtuallist]: listbox replacements * [Listbox navigation by keyboard] * [listbox selection vs. active element] * [listbox selection] * [mclistbox] * [multi scrolling] * [multicolumn listbox] * [Quick positioning in listbox] * [Scrolled listbox widget -Display a list, pick any item then perform some follow up action.] * [Sort listboxes by Drag-and-drop] * [tablelist] * [Traversing listboxes via the keyboard] * [Undo and Redo undoable widgets] * [Hugelist] * [listbox replace command] * [fancy listbox] * [Miscellaneous Tcl procs (Corey)] * [PRS Open Source Software] * [tinycombo] * [tktable] * [tktreectrl] ---- [lv] Has anyone implemented a listbox with separators, for cases where you want to visually group related members of a listbox? ---- [RS] 2006-12-11 [Mousewheel] is supported by Tk (on Win XP at least), but in a surprising way: [focus] is needed, but can't be applied by clicking into a listbox, even with the -takefocus 1 option. After an explicit focus .lb the widget border is highlighted, and the mousewheel can be used to scroll up and down. To get "focus follows click", you can add a binding like this: bind .lb <1> {+ focus %W} ---- [Category Widget] | [Category Command] | [Tk syntax help] | [Arts and Crafts of Tcl-Tk Programming]