В этой статье я покажу вам шаг за шагом, как вы можете добавить индикатор выполнения и выпадающий виджет в свой пользовательский интерфейс, разработанный с помощью Tkinter. Эта статья состоит из двух частей. Сначала я объясню вам, как создать окно и добавить выпадающий список. И как добавить обратный вызов, чтобы интерфейс реагировал, если пользователь меняет выпадающий список. Во второй части я продемонстрирую, как добавить индикатор выполнения с помощью Tkinter. Давайте начнем.
Смотрите Пошаговый учебник Youtube
Установка Tkinter
Модуль Tkinter является встроенным модулем, поэтому вам не нужно его устанавливать. Вы можете просто импортировать модуль в свой файл python и использовать его.
Создайте окно Tkinter
Сначала я создам пустое окно. Вот код для создания окна размером 200 на 200:
from tkinter import Tk class App(Tk): def __init__(self): super().__init__() # Create the window self.geometry('200x200') #Resize app = App() app.mainloop()
Что именно делает этот код? Я создал класс, который наследуется от Tk. Класс Tk содержит все графические функции для создания окна. В методе конструктора init Я вызову конструктор суперкласса. Это создаст окно.
Затем я изменил размер окна до 200 на 200 с помощью метода .geometry ().
Вы можете вставить этот код в IDLE или PyCharm, запустить его, и вы получите свое окно, созданное. Давайте перейдем к следующему шагу, добавив выпадающее меню.
Добавить выпадающий список Tkinter
Теперь я покажу вам, как добавить выпадающий список, подобный приведенному ниже. Выпадающий список позволяет выбрать пол, Мужской или Женский. Вы можете изменить эти параметры на что угодно и добавить столько вариантов, сколько захотите.
Вот код для добавления выпадающего виджета. Я поместил новый фрагмент кода между ##, просто чтобы отметить добавленный новый фрагмент кода.
from tkinter import Tk, OptionMenu,StringVar class App(Tk): def __init__(self): super().__init__() self.geometry('200x200') #NEW: Adding the dropdown ## self.gender_selected = StringVar() self.gender_selected.set("Select Gender") self.dropdown = OptionMenu(self, self.gender_selected, *["Male", "Female"]) self.dropdown.grid(row=0,column=1) ########################### app = App() app.mainloop()
Объяснение кода
Что делает этот код? Сначала я создал переменную, которая будет содержать значение, выбранное в раскрывающемся списке, называемое gender_selected, см. строки 9 и 10. Если вы выберете другое выпадающее значение, оно будет сохранено в этой переменной.
Затем я создал выпадающий виджет с помощью класса Option Menu. Строки 11 и 12. Обратите внимание, что вам нужно импортировать этот класс, чтобы использовать его, иначе вы получите синтаксическую ошибку при попытке запустить программу. Класс OptionMenu принимает три параметра: окно, которое будет содержать виджет, переменную, содержащую значение виджета, и список с раскрывающимся списком.
Далее я указал, где в окне я хочу разместить свой выпадающий список, используя метод .grid (). Это важный шаг, если я забуду добавить его, виджет не будет отображаться.
Узнайте, как вызвать действие при изменении выбранного значения раскрывающегося списка
Добавьте индикатор выполнения tkinter в свое приложение
Я надеюсь, что вам понравится учебник и большое спасибо за чтение! Счастливого кодирования!