diff --git a/part1_basic/lesson9/README.md b/part1_basic/lesson9/README.md new file mode 100644 index 0000000..6b28dff --- /dev/null +++ b/part1_basic/lesson9/README.md @@ -0,0 +1,24 @@ +Задание: + + +Импортируйте библиотеку Tkinter в вашем Python-скрипте. + + +Создайте основное окно приложения. + + +Добавьте виджет Entry (поле для ввода текста) в основное окно. + + +Создайте кнопку (Button), которая будет запускать функцию при нажатии. + + +Создайте функцию, которая будет вызываться при нажатии кнопки и будет отображать введенный пользователем текст в новом окне или под полем для ввода. + + +Добавьте кнопку которая будет очищать поле ввода. + + +Добавьте проверку, чтобы при попытке запустить с пустым полем выводилось сообщение что поле пустое. + + diff --git a/part1_basic/lesson9/app.py b/part1_basic/lesson9/app.py new file mode 100644 index 0000000..093463c --- /dev/null +++ b/part1_basic/lesson9/app.py @@ -0,0 +1,55 @@ +""" +Модуль является результатом выполнения практической +домашней работы по теме "tkinter" + +:copyright: Сергей Ванюшкин +:git: https://git.pi3c.ru/pi3c/StudyRepo_Synergy.git +:license: MIT +2023г. +""" + +from tkinter import * + + +class MyApp: + def __init__(self): + self.__root = Tk() + self.label_text = StringVar() + self.update_label("Введите текст") + + self.label = Label(self.__root, textvariable=self.label_text) + self.entry = Entry(self.__root) + self.btn_act = Button( + self.__root, text="Выполнить команду свыше", command=self.btn_act_click + ) + self.btn_clear = Button( + self.__root, text="Очистить", command=self.btn_clear_click + ) + self.btn_exit = Button(self.__root, text="Выход", command=self.btn_exit_click) + + self.label.pack(padx=15, pady=15) + self.entry.pack(fill=X, padx=15, pady=15) + self.btn_act.pack(padx=15, pady=15) + self.btn_clear.pack(padx=15, pady=15) + self.btn_exit.pack(padx=15, pady=15) + mainloop() + + def update_label(self, text): + self.label_text.set(text) + + def btn_act_click(self): + text = self.entry.get() + if text: + self.update_label(f"Вы ввели: {text}") + else: + self.update_label("Вы ни чего не ввели") + + def btn_clear_click(self): + self.update_label("Введите что-нибудь еще") + self.entry.delete(0, END) + + def btn_exit_click(self): + self.__root.destroy() + + +app = MyApp()