What's new in 6.0
CustomTkinter 6.0.0 was released on June 24, 2026. It adds new widget options, a fourth color theme and a demo app that ships with the library, and it fixes many long-standing bugs. A few changes affect how existing apps behave, so read the section Check when upgrading before you update.
pip install --upgrade customtkinter
New features
- Showroom app: a demo of all widgets that is installed with the library, start it with
customtkinter.run_showroom(). See Showroom. - Gold theme: a fourth built-in color theme,
customtkinter.set_default_color_theme("gold"). See Color and Themes. - Border for CTkLabel: new arguments
border_widthandborder_color. See CTkLabel. - Vertical CTkSegmentedButton:
orientation="vertical"stacks the buttons from top to bottom. See CTkSegmentedButton. - Font for CTkTabview tabs: new argument
segmented_button_font. See CTkTabview. - Mouse wheel for CTkSlider: the slider follows the mouse wheel, the step size is set with
scroll_step. Scrolling and dragging also work better on CTkScrollbar. - New methods:
.set()on CTkCheckBox, CTkRadioButton, CTkSwitch and CTkEntry.index()on CTkComboBox, CTkOptionMenu, CTkSegmentedButton and CTkTabview.len()on CTkSegmentedButton and CTkTabview.get(index)on CTkTabview returns the name of the tab at a position
Check when upgrading
These changes can alter how an existing app behaves:
- CTkButton calls
commandon release: The command now runs when the mouse button is released over the button, not when it is pressed. Moving the mouse away before releasing cancels the click. - CTkEntry and CTkTextbox lose focus: Clicking somewhere else in the window now removes the keyboard focus from the entry or textbox.
- Dropdowns close on a second click: Clicking a CTkComboBox or CTkOptionMenu again while its menu is open now closes the menu.
Custom themes made for 5.x keep working. The new border_width and border_color values for CTkLabel are optional in a theme file.
If you need more time to adapt your app, you can stay on the last 5.x release:
pip install "customtkinter<6"
Fixes
.configure()and.cget()were fixed for all widgets.- Renaming tabs in CTkTabview was improved.
- Dragging the CTkScrollbar button is smoother.
- CTkScrollableFrame draws its border correctly and scrolls when the mouse is over a child widget.
- A custom window icon on CTkToplevel is no longer replaced by the default icon.
- Many smaller fixes for missing callbacks and wrong attribute names.
The full list of changes is in the changelog on GitHub.