Python Code
import tkinter as tk
from tkinter import messagebox
def fahrenheit(celsius):
try:
celsius = float(celsius)
f = round((1.8 * celsius + 32), 1)
result_label.config(text=f"{celsius}°C = {f}°F", fg="#333333")
# Fun messages
if f == -40:
messagebox.showinfo("Notice", "Also known as Absolute Zero.")
elif f < 1:
messagebox.showinfo("Notice", "It's quite cold. Stay warm!")
elif f > 95:
messagebox.showinfo("Notice", "It's quite hot. Stay hydrated!")
except ValueError:
messagebox.showerror("Invalid Input", "Please enter a valid numeric value.")
root = tk.Tk()
root.title("Celsius to Fahrenheit Converter")
root.geometry("420x200")
root.configure(bg="#f9f9f9")
header_label = tk.Label(root, text="Temperature Converter", font=("Arial", 18, "bold"),
bg="#f9f9f9", fg="#222222")
header_label.pack(pady=10)
input_frame = tk.Frame(root, bg="#f9f9f9")
input_frame.pack(pady=5)
celsius_label = tk.Label(input_frame, text="Enter Celsius Temperature:", font=("Arial", 14),
bg="#f9f9f9", fg="#555555")
celsius_label.pack(side="left", padx=(0, 10))
celsius_entry = tk.Entry(input_frame, font=("Arial", 14), width=10, justify="center", bd=2,
relief="groove")
celsius_entry.pack(side="left")
convert_btn = tk.Button(root, text="Convert", font=("Arial", 14, "bold"),
command=lambda: fahrenheit(celsius_entry.get()),
bg="#4CAF50", fg="white", padx=10, pady=5, bd=0,
relief="raised", activebackground="#45a049")
convert_btn.pack(pady=10)
result_label = tk.Label(root, text="", font=("Arial", 16), bg="#f9f9f9", fg="#333333")
result_label.pack(pady=5)
root.mainloop()