Skip to content

CTkOptionMenu

Tom Schimansky edited this page Jan 19, 2023 · 17 revisions
Bildschirmfoto 2022-08-15 um 18 55 27

Example Code:

Without variable:

def optionmenu_callback(choice):
    print("optionmenu dropdown clicked:", choice)

combobox = customtkinter.CTkOptionMenu(master=app,
                                       values=["option 1", "option 2"],
                                       command=optionmenu_callback)
combobox.pack(padx=20, pady=10)
combobox.set("option 2")  # set initial value

With variable:

optionmenu_var = customtkinter.StringVar(value="option 2")  # set initial value

def optionmenu_callback(choice):
    print("optionmenu dropdown clicked:", choice)

combobox = customtkinter.CTkOptionMenu(master=app,
                                       values=["option 1", "option 2"],
                                       command=optionmenu_callback,
                                       variable=optionmenu_var)
combobox.pack(padx=20, pady=10)

Arguments:

argument value
master root, frame, top-level
width box width in px
height box height in px
corner_radius corner radius in px
fg_color foreground (inside) color, tuple: (light_color, dark_color) or single color
button_color right button color, tuple: (light_color, dark_color) or single color
button_hover_color hover color, tuple: (light_color, dark_color) or single color
dropdown_fg_color dropdown fg color, tuple: (light_color, dark_color) or single color
dropdown_hover_color dropdown button hover color, tuple: (light_color, dark_color) or single color
dropdown_text_color dropdown text color, tuple: (light_color, dark_color) or single color
text_color text color, tuple: (light_color, dark_color) or single color
text_color_disabled text color when disabled, tuple: (light_color, dark_color) or single color
font button text font, tuple: (font_name, size)
dropdown_font button text font, tuple: (font_name, size)
hover enable/disable hover effect: True, False
state "normal" (standard) or "disabled" (not clickable, darker color)
command function will be called when the dropdown is clicked manually
variable StringVar to control or get the current text
values list of strings with values that appear in the option menu dropdown
dynamic_resizing enable/disable automatic resizing of optiomenu when text is too big to fit: True (standard), False
anchor "n", "s", "e", "w", "center", orientation of the text inside the optionmenu, default is "w"

Methods:

  • .configure(attribute=value, ...)

    All attributes can be configured and updated.

    ctk_combobox.configure(state=..., command=..., values=[...], variable=..., ...)
  • .set(value)

    Set optionemnu to specific string value. Value don't has to be part of the values list.

  • .get()

    Get current string value of optionmenu.

⚠️ Attention ⚠️

The Github Wiki is outdated, the new documentation can be found at:

https://customtkinter.tomschimansky.com

Clone this wiki locally