Рубрики
Без рубрики

Как создать индикатор выполнения Tkinter и выпадающий список

Узнайте шаг за шагом, как вы можете добавить индикатор выполнения и выпадающий виджет в свой пользовательский интерфейс разработки с помощью Tkinter

Автор оригинала: Marta Rey.

В этой статье я покажу вам шаг за шагом, как вы можете добавить индикатор выполнения и выпадающий виджет в свой пользовательский интерфейс, разработанный с помощью 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 в свое приложение

Я надеюсь, что вам понравится учебник и большое спасибо за чтение! Счастливого кодирования!