Автор оригинала: Pankaj Kumar.
Здравствуйте, товарищ программист! Сегодня мы собираемся создать ваше собственное приложение для преобразования градуса Цельсия в градус Фаренгейта с помощью Python tkinter .
Создание преобразователя Цельсия в Фаренгейт с помощью Tkinter
Тема не требует пояснений, поэтому мы сразу переходим к части реализации.
Шаг 1: Создание окна
Прежде чем мы начнем с основных частей проекта, мы должны создать пустое настраиваемое окно. Код для того же самого показан ниже:
import tkinter as tk window = tk.Tk() window.geometry("300x250") window.config(bg="#A569BD") window.resizable(width=False,height=False) window.title('Celsius to Fahrenheit Converter!')
На этом этапе мы обязательно сделаем следующие действия:
- Импорт
tkinter
модуль - Создание объекта окна и настройка размеров и цвета фона окна
- Установите изменяемые атрибуты как false, чтобы убедиться, что указанные размеры остаются фиксированными.
- Настройка заголовка приложения
Результат вышеупомянутого кода выглядит следующим образом:
Шаг 2: Добавление основных элементов на экран
Основные элементы, используемые для приложения, перечислены ниже:
- Две метки: Информация о приложении
- Поле ввода: Введите значение температуры
- Button_1: Для преобразования температуры в градус Фаренгейта
- Текстовое поле: Для отображения результата преобразованной температуры
- Button_2: Для выхода из приложения
Код для добавления всех элементов показан ниже:
l1 = tk.Label(window,text="Celsius to Fahrenheit Converter",font=("Arial", 15),fg="white",bg="black") l2= tk.Label(window,text="Enter temperature in Celsius: ",font=("Arial", 10,"bold"),fg="white",bg="#A569BD") l3= tk.Label(window,text="Temperature in Fahrenheit is: ",font=("Arial", 10,"bold"),fg="white",bg="#A569BD") empty_l1 = tk.Label(window,bg="#A569BD") empty_l2 = tk.Label(window,bg="#A569BD") e1= tk.Entry(window,font=('Arial',10)) btn1 = tk.Button(window,text="Convert to Fahrenheit!",font=("Arial", 10)) btn2 = tk.Button(window,text="Exit application",font=("Arial", 10)) t1=tk.Text(window,state="disabled",width=15,height=0)
В дополнение ко всем упомянутым элементам, мы удостоверяемся, что у нас есть некоторые пустые метки , чтобы добавить новую строку между двумя элементами.
Для добавления элементов на экране мы используем функцию pack
и упаковываем все элементы в определенном порядке. Код упаковки показан ниже:
l1.pack() l2.pack() e1.pack() empty_l1.pack() btn1.pack() l3.pack() t1.pack() empty_l2.pack() btn2.pack()
Результат выглядит примерно так, как показано ниже:
Шаг 3: Добавление функциональных возможностей к кнопкам
Кнопка 1: Кнопка выхода из приложения
Давайте сначала создадим более простую кнопку, чтобы выйти из приложения . Все, что нам нужно сделать, это создать функцию, которая уничтожит окно. Код для того же самого показан ниже:
def exit(): window.destroy()
Чтобы выполнить функцию при нажатии кнопки, мы добавляем атрибут command
к кнопке выхода из приложения. И добавьте команду в качестве функции выхода.
Кнопка 2: Кнопка преобразования температуры
Вторая кнопка преобразует температуру в “По Фаренгейту” , и то же самое включает в себя следующие шаги:
- Получите температуру по Цельсию из поля ввода
- Используйте формулу для преобразования полученной температуры в температуру по Фаренгейту
- Очистите текстовое поле
- Вставьте значение рассчитанной температуры в текстовое поле
Код для того же самого показан ниже:
def convert(): c = int(e1.get()) f = ((c*9)/(5))+32 t1.config(state='normal') t1.delete('1.0', tk.END) t1.insert(tk.END,f) t1.config(state='disabled')
Чтобы сделать функцию исполняемой, нажмите кнопку добавить атрибут команды к кнопке преобразовать.
Полный код для конвертера Цельсия в Фаренгейт
def exit(): window.destroy() def convert(): c = int(e1.get()) f = ((c*9)/(5))+32 t1.config(state='normal') t1.delete('1.0', tk.END) t1.insert(tk.END,f) t1.config(state='disabled') import tkinter as tk window = tk.Tk() window.geometry("300x250") window.config(bg="#A569BD") window.resizable(width=False,height=False) window.title('Celsius to Fahrenheit Converter!') l1 = tk.Label(window,text="Celsius to Fahrenheit Converter",font=("Arial", 15),fg="white",bg="black") l2= tk.Label(window,text="Enter temperature in Celsius: ",font=("Arial", 10,"bold"),fg="white",bg="#A569BD") l3= tk.Label(window,text="Temperature in Fahrenheit is: ",font=("Arial", 10,"bold"),fg="white",bg="#A569BD") empty_l1 = tk.Label(window,bg="#A569BD") empty_l2 = tk.Label(window,bg="#A569BD") e1= tk.Entry(window,font=('Arial',10)) btn1 = tk.Button(window,text="Convert to Fahrenheit!",font=("Arial", 10),command=convert) btn2 = tk.Button(window,text="Exit application",font=("Arial", 10),command=exit) t1=tk.Text(window,state="disabled",width=15,height=0) l1.pack() l2.pack() e1.pack() empty_l1.pack() btn1.pack() l3.pack() t1.pack() empty_l2.pack() btn2.pack() window.mainloop()
Примеры Выходных данных
Приложение выше было протестировано на двух тестовых образцах, и результаты были идеальными! Экраны вывода для обоих входов показаны ниже:
Вывод
Поздравляю! Вы успешно создали приложение, которое преобразует температуру по Цельсию в температуру по Фаренгейту.
Надеюсь, вам понравился проект! Продолжайте кодировать!