This is an unofficial mirror of Tkinter reference documentation (based on Python 2.7 and Tk 8.5) created by the late John Shipman.
It was last updated in 2013 and is unmaintained. [More info]
This widget is a combination of an Entry
and a
drop-down menu. In your application, you will see the usual
text entry area, with a downward-pointing arrow. When the user
clicks on the arrow, a drop-down menu appears. If the user
clicks on one, that choice replaces the current contents of the
entry. However, the user may still type text directly into the
entry (when it has focus), or
edit the current text.
To create a ttk.Combobox
widget as the child
of a given
widget:
parent
w
= ttk.Combobox(parent
,option
=value
, ...)
Options:
Table 39. ttk.Combobox
options
class_
| The widget class name. This may be specified when the widget is created, but cannot be changed later. For an explanation of widget classes, see Section 27, “Standardizing appearance”. |
cursor
| The cursor that will appear when the mouse is over the checkbutton; see Section 5.8, “Cursors”. |
exportselection
|
By default, if you select text within an Entry widget, it is automatically exported
to the clipboard. To avoid this exportation, use
exportselection=0 .
|
height
|
Use this option to specify a maximum number of rows that
will appear in the drop-down menu; the default is 20.
If there are more values than this
number, the drop-down menu will automatically include a
vertical scrollbar.
|
justify
|
This option specifies how the text will be positioned
within the entry area when it does not completely fill
the area. Values may be tk.LEFT to
left-justify; tk.CENTER to center; or
tk.RIGHT to right-justify.
|
postcommand
|
You may use this option to supply a callback function
that will be invoked when the user clicks on the
down-arrow. This callback may change the values option; if so, the changes will appear
in the drop-down menu.
|
style
| The style to be used in rendering this checkbutton; see Section 49, “Using and customizing ttk styles”. |
takefocus
|
By default, a ttk.Checkbutton will
be included in focus traversal; see Section 53, “Focus: routing keyboard input”. To remove the widget from focus
traversal, use takefocus=False .
|
textvariable
| A variable that controls the text that appears in the entry area; see Section 52, “Control variables: the values behind the widgets”. |
validate
|
You may use this option to request dynamic validation of
the widget's text content.
See Section 10.2, “Adding validation to an Entry
widget”.
|
validatecommand
|
You may use this option to specify a callback function
that dynamically validates the widget's text content.
See Section 10.2, “Adding validation to an Entry
widget”.
|
values
| The choices that will appear in the drop-down menu, as a sequence of strings. |
width
| This option specifies the width of the entry area as a number of characters. The actual width will be this number times the average width of a character in the effective font. The default value is 20. |
xscrollcommand
|
If the widget has an associated horizontal scrollbar,
set this option to the .set method of
that scrollbar.
|
Methods on a ttk.Combobox
include all those
described in Section 46, “Methods common to all ttk widgets”, plus all the
methods on the Tkinter widget described in Section 10, “The Entry
widget”, plus:
.current([index
])
To select one of the elements of the values
option, pass the index of that element as the argument to
this method. If you do not supply an argument, the
returned value is the index of the current entry text in
the values
list, or -1 if the current entry
text is not in the values
list.
.set(value
)
Set the current text in the widget to
.
value
The states of a ttk.Combobox
widget affect
its operation. To interrogate or change states, see the .instate()
and .state()
methods in Section 46, “Methods common to all ttk widgets”.
If the widget is in the disabled
state, no
user action will change the contents.
If the widget is in the !disabled
state and
also the readonly
state, the user may change
the contents by using the drop-down menu, but may not
directly edit the contents.