Огромное спасибо всем людям, которые сделали пожертвования на помощь этому проекту? |
---|
CustomTkinter — это библиотека пользовательского интерфейса Python, основанная на Tkinter, которая предоставляет новые, современные и полностью настраиваемые виджеты. Они создаются и используются как обычные виджеты Tkinter, а также могут использоваться в сочетании с обычными элементами Tkinter. Виджеты и цвета окон либо адаптируются к внешнему виду системы, либо к заданному вручную режиму («светлый», «темный»), а все виджеты и окна CustomTkinter поддерживают масштабирование HighDPI (Windows, macOS). С CustomTkinter вы получите единообразный и современный вид на всех настольных платформах (Windows, macOS, Linux).
| complex_example.py
в Windows 11 с темным режимом и синей темой
| complex_example.py
на macOS в облегченном режиме и стандартной «синей» теме
Установите модуль с помощью pip:
pip3 install customtkinter
Обновите существующую установку: pip3 install customtkinter --upgrade
(обновляйте как можно чаще, поскольку эта библиотека находится в активной разработке)
Официальную документацию можно найти здесь:
➡️ https://customtkinter.tomschimansky.com/documentation .
Чтобы протестировать customtkinter, вы можете попробовать этот простой пример, используя всего одну кнопку:
import customtkintercustomtkinter.set_appearance_mode("System") # Режимы: системный (по умолчанию), светлый, darkcustomtkinter.set_default_color_theme("blue") # Темы: синий (по умолчанию), темно-синий, greenapp = customtkinter.CTk() # создать окно CTk как вы это делаете с Tk windowapp.geometry("400x240")def button_function():print("кнопка нажата")# Используйте CTkButton вместо tkinter Buttonbutton = customtkinter.CTkButton(master=app, text="CTkButton", команда=button_function)button.place(relx=0.5, полагаться=0.5, якорь =customtkinter.CENTER)app.mainloop()
в результате чего в macOS появляется следующее окно:
В папке примеров вы можете найти больше примеров программ, а в документации — дополнительную информацию о режиме внешнего вида, масштабировании, темах и всех виджетах.
CustomTkinter может адаптироваться к светлому или темному режиму Windows 10/11:
| complex_example.py
в Windows 11 с изменением режима внешнего вида системы и стандартной «синей» темой
В macOS вам понадобится либо Python3.10 или более поздняя версия, либо версия Python anaconda, чтобы получить заголовок темного окна (требуется Tcl/Tk >= 8.6.9):
| complex_example.py
в macOS с изменением режима внешнего вида системы, изменением пользовательского масштабирования и стандартной «синей» темой
На CTkButton можно поместить изображение. Вам просто нужно передать объект PhotoImage в CTkButton с аргументом image
. Если вам вообще не нужен текст, вам нужно установить text=""
или указать, как расположить текст и изображение одновременно с помощью compound
опции:
| image_example.py
в Windows 11
Прокручиваемые рамки возможны в вертикальной или горизонтальной ориентации и могут комбинироваться с любыми другими виджетами. | scrollable_frame_example.py
в Windows 11
В следующем примере я использовал TkinterMapView, который хорошо интегрируется с программой CustomTkinter. Это виджет карты на основе плиток, который отображает OpenStreetMap или другие карты на основе плиток:
| examples/map_with_customtkinter.py
из репозитория TkinterMapView в Windows 11
Вы можете найти библиотеку TkinterMapView и пример программы здесь: https://github.com/TomSchimansky/TkinterMapView.