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

Python Tkinter: Конвертер Цельсия в Фаренгейт

Здравствуйте, товарищ программист! Сегодня мы собираемся создать ваше собственное приложение для преобразования градуса Цельсия в градус Фаренгейта с помощью Python tkinter.

Автор оригинала: 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!')

На этом этапе мы обязательно сделаем следующие действия:

  1. Импорт tkinter модуль
  2. Создание объекта окна и настройка размеров и цвета фона окна
  3. Установите изменяемые атрибуты как false, чтобы убедиться, что указанные размеры остаются фиксированными.
  4. Настройка заголовка приложения

Результат вышеупомянутого кода выглядит следующим образом:

Пустой экран От Градуса Цельсия до Фаренгейта

Шаг 2: Добавление основных элементов на экран

Основные элементы, используемые для приложения, перечислены ниже:

  1. Две метки: Информация о приложении
  2. Поле ввода: Введите значение температуры
  3. Button_1: Для преобразования температуры в градус Фаренгейта
  4. Текстовое поле: Для отображения результата преобразованной температуры
  5. 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: Кнопка преобразования температуры

Вторая кнопка преобразует температуру в “По Фаренгейту” , и то же самое включает в себя следующие шаги:

  1. Получите температуру по Цельсию из поля ввода
  2. Используйте формулу для преобразования полученной температуры в температуру по Фаренгейту
  3. Очистите текстовое поле
  4. Вставьте значение рассчитанной температуры в текстовое поле

Код для того же самого показан ниже:

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()

Примеры Выходных данных

Приложение выше было протестировано на двух тестовых образцах, и результаты были идеальными! Экраны вывода для обоих входов показаны ниже:

Выход1 C2F Цельсия по Фаренгейту Tkinter
Выход 2C 2F по Цельсию до Фаренгейта

Вывод

Поздравляю! Вы успешно создали приложение, которое преобразует температуру по Цельсию в температуру по Фаренгейту.

Надеюсь, вам понравился проект! Продолжайте кодировать!