ttk::combobox(n)

✨ ttk::combobox β€” text field with popdown selection list ✨

okay bestie, you're reading the ttk::combobox(n) manual page, living under Tk Themed Widget. It's giving β€œtext field with a popdown selection list,” and we are going to go through every single detail like it's a group-chat receipt. πŸ’…


🌸 NAME 🌸

ttk::combobox β€” text field with popdown selection list. periodt.

πŸ¦‹ SYNOPSIS πŸ¦‹

ttk::combobox pathName ?options?

πŸŽ€ DESCRIPTION πŸŽ€

A ttk::combobox combines a text field with a pop-down list of values; the user may select the value of the text field from among the values in the list. iconic behavior, no cap. ✨

🌈 STANDARD OPTIONS 🌈

  • -class
  • -cursor
  • -takefocus
  • -style
  • -placeholder
  • -placeholderforeground

See the ttk_widget manual entry for details on the standard options.

πŸ’– WIDGET-SPECIFIC OPTIONS πŸ’–

  • -exportselection β€” Command-Line Name: -exportselection; Database Name: exportSelection; Database Class: ExportSelection. Boolean value. If set, the widget selection is linked to the X selection.
  • -justify β€” Command-Line Name: -justify; Database Name: justify; Database Class: Justify. Specifies how the text is aligned within the widget. Must be one of left, center, or right.
  • -height β€” Command-Line Name: -height; Database Name: height; Database Class: Height. Specifies the height of the pop-down listbox, in rows.
  • -postcommand β€” Command-Line Name: -postcommand; Database Name: postCommand; Database Class: PostCommand. A Tcl script to evaluate immediately before displaying the listbox. The -postcommand script may specify the -values to display.
  • -state β€” Command-Line Name: -state; Database Name: state; Database Class: State. One of normal, readonly, or disabled. In the readonly state, the value may not be edited directly, and the user can only select one of the -values from the dropdown list. In the normal state, the text field is directly editable. In the disabled state, no interaction is possible.
  • -textvariable β€” Command-Line Name: -textvariable; Database Name: textVariable; Database Class: TextVariable. Specifies the name of a global variable whose value is linked to the widget value. Whenever the variable changes value the widget value is updated, and vice versa.
  • -values β€” Command-Line Name: -values; Database Name: values; Database Class: Values. Specifies the list of values to display in the drop-down listbox.
  • -width β€” Command-Line Name: -width; Database Name: width; Database Class: Width. Specifies an integer value indicating the desired width of the entry window, in average-size characters of the widget's font.

πŸ‘‘ WIDGET COMMAND πŸ‘‘

In addition to the standard cget, configure, identify element, instate, state and style commands (see ttk::widget), combobox widgets support the following additional commands:

  • pathName current ?newIndex? β€” If newIndex is supplied, sets the combobox value to the element at position newIndex in the list of -values (in addition to integers, the end index is supported and indicates the last element of the list, moreover the same simple interpretation as for the command string index is supported, with simple integer index arithmetic and indexing relative to end). Otherwise, returns the index of the current value in the list of -values or {} if the current value does not appear in the list.
  • pathName get β€” Returns the current value of the combobox.
  • pathName set value β€” Sets the value of the combobox to value.

The combobox widget also supports the following ttk::entry widget commands:

  • bbox
  • delete
  • icursor
  • index
  • insert
  • selection
  • xview

πŸ”₯ VIRTUAL EVENTS πŸ”₯

The combobox widget generates a <<ComboboxSelected>> virtual event when the user selects an element from the list of values. If the selection action unposts the listbox, this event is delivered after the listbox is unposted. sequencing queen behavior. πŸ’…

🧚 STYLING OPTIONS 🧚

The class name for a ttk::combobox is TCombobox. The ttk::combobox uses the entry and listbox widgets internally. The listbox frame has a class name of ComboboxPopdownFrame.

Dynamic states: disabled, focus, pressed, readonly.

TCombobox styling options configurable with ttk::style are:

  • -arrowcolor color
  • -arrowsize amount
  • -background color
  • -bordercolor color
  • -darkcolor color
  • -focusfill color
  • -foreground color
  • -fieldbackground color β€” can only be changed when using non-native and non-graphical themes.
  • -insertcolor color
  • -insertwidth amount
  • -lightcolor color
  • -padding padding
  • -placeholderforeground color
  • -postoffset padding
  • -selectbackground color β€” text entry select background.
  • -selectforeground color β€” text entry select foreground.

The ttk::combobox popdown listbox cannot be configured using ttk::style nor via the widget configure command. The listbox can be configured using the option database.

option add *TCombobox*Listbox.background color
option add *TCombobox*Listbox.font font
option add *TCombobox*Listbox.foreground color
option add *TCombobox*Listbox.selectBackground color
option add *TCombobox*Listbox.selectForeground color

To configure a specific listbox (subject to future change):

set popdown [ttk::combobox::PopdownWindow .mycombobox]
$popdown.f.l configure -font font

ComboboxPopdownFrame styling options configurable with ttk::style are:

  • -borderwidth amount
  • -relief relief

Some options are only available for specific themes.

See the ttk::style manual page for information on how to configure ttk styles.

🫢 SEE ALSO 🫢

ttk::widget(n), ttk::entry(n)

⭐ KEYWORDS ⭐

choice, entry, list box, text box, widget


later, bestie πŸ’‹ β€” this one's from Tk 8.5 and it labels itself ttk::combobox(n). The original footer doesn't give a separate date, so no fake date energy here, just source/version and good vibes. mwah πŸŽ€

πŸ“¦ where this page comes from