- пользовательский стиль (для определения цветов, шрифтов...)
- Пользовательские виджеты, наследующие пользовательский стиль
Код: Выделить всё
class Style():
def __init__(self, selected_style):
match selected_style:
case "style1":
self.colors = ["#3d3d3d", "#5c5c5c"]
case "style2":
self.colors = ["#c6c6c6", "#ececec"]
Код: Выделить всё
from customtkinter import CTkButton
class MyButton(CTkButton, Style):
def __init__(self, master, style, text):
Style.__init__(self, style)
CTkButton.__init__(self, master, text=text, fg_color=self.colours[1])
self.grid(sticky="WE", padx=8, pady=8)
- Пользовательские виджеты избавляют меня от необходимости указывать каждый раз некоторые параметры (например, настройки сетки).
- Стиль с аргументом позволяет мне менять все цвета, шрифты... приложения, не меняя все параметры виджетов (например, настройки сетки).
При создании экземпляра виджета необходимо передать аргумент стиля («style1» или «style2»). Он определяется при запуске приложения, и затем мне нужно передать его через все приложение каждому виджету.
Как избежать передачи аргумента стиля через все приложение?
Я понимаю, что мне, возможно, придется существенно реструктурировать свой код...
Подробнее здесь: https://stackoverflow.com/questions/790 ... -to-an-app
Мобильная версия