Ttk widgets represent a major improvement over standard Tkinter widgets in terms of the power and flexibility with which they can be styled. This flexibility is what gives Ttk widgets the ability to mimic native UI controls across platforms, but it comes at a cost: Ttk styling is confusing, poorly documented, and occasionally inconsistent.
To understand Ttk styling, let's start with some vocabulary, from the most basic elements to the most complex:
- Ttk starts with elements. An element is one piece of a widget, such as a border, an arrow, or a field where text can be typed.
- Elements are composed using layouts into a complete widget (a Combobox or Treeview, for example).
- Styles are collections of properties that define color and font settings:
- Each style has a name, usually T, plus the name of the widget, such as TButton or TEntry. There are some exceptions...