📅  最后修改于: 2023-12-03 15:06:51.498000             🧑  作者: Mango
Tkinter 是 Python 中常用的 GUI 编程模块,它可以帮助我们快速地创建简单直观的图形界面。在本文中,我们将使用 Tkinter 模块创建一个温度转换器,将摄氏度转换成华氏度或将华氏度转换成摄氏度。
接下来我们来一步步实现这个小程序。
在 Python 中,我们需要先导入 Tkinter 模块,才能使用其中的各种函数和类。
import tkinter as tk
我们需要在窗口中创建标签、输入框和按钮等 GUI 元素,来实现输入和输出的功能。
# 创建窗口
window = tk.Tk()
window.title("Temperature Converter")
# 创建标签
celcius_label = tk.Label(text="摄氏度")
celcius_label.pack()
fahrenheit_label = tk.Label(text="华氏度")
fahrenheit_label.pack()
# 创建输入框
celcius_entry = tk.Entry()
celcius_entry.pack()
fahrenheit_entry = tk.Entry()
fahrenheit_entry.pack()
# 创建按钮
to_celcius_button = tk.Button(text="华氏度转换为摄氏度")
to_fahrenheit_button = tk.Button(text="摄氏度转换为华氏度")
to_celcius_button.pack()
to_fahrenheit_button.pack()
我们需要实现两个函数,分别用于将摄氏度转换成华氏度和将华氏度转换成摄氏度。
# 摄氏度转换成华氏度
def to_fahrenheit(celcius):
return (celcius * 9/5) + 32
# 华氏度转换成摄氏度
def to_celcius(fahrenheit):
return (fahrenheit - 32) * 5/9
在点击按钮后,我们需要将输入框中的数值进行转换,并将转换结果展示在界面中。
# 按钮点击事件
def convert():
try:
celcius = float(celcius_entry.get())
fahrenheit = float(fahrenheit_entry.get())
if celcius:
fahrenheit = to_fahrenheit(celcius)
fahrenheit_entry.delete(0,tk.END)
fahrenheit_entry.insert(0,str(fahrenheit))
elif fahrenheit:
celcius = to_celcius(fahrenheit)
celcius_entry.delete(0,tk.END)
celcius_entry.insert(0,str(celcius))
except ValueError:
pass
# 绑定按钮事件
to_celcius_button.config(command=convert)
to_fahrenheit_button.config(command=convert)
# 循环运行窗口
window.mainloop()
import tkinter as tk
# 摄氏度转换成华氏度
def to_fahrenheit(celcius):
return (celcius * 9/5) + 32
# 华氏度转换成摄氏度
def to_celcius(fahrenheit):
return (fahrenheit - 32) * 5/9
# 按钮点击事件
def convert():
try:
celcius = float(celcius_entry.get())
fahrenheit = float(fahrenheit_entry.get())
if celcius:
fahrenheit = to_fahrenheit(celcius)
fahrenheit_entry.delete(0,tk.END)
fahrenheit_entry.insert(0,str(fahrenheit))
elif fahrenheit:
celcius = to_celcius(fahrenheit)
celcius_entry.delete(0,tk.END)
celcius_entry.insert(0,str(celcius))
except ValueError:
pass
# 创建窗口
window = tk.Tk()
window.title("Temperature Converter")
# 创建标签
celcius_label = tk.Label(text="摄氏度")
celcius_label.pack()
fahrenheit_label = tk.Label(text="华氏度")
fahrenheit_label.pack()
# 创建输入框
celcius_entry = tk.Entry()
celcius_entry.pack()
fahrenheit_entry = tk.Entry()
fahrenheit_entry.pack()
# 创建按钮
to_celcius_button = tk.Button(text="华氏度转换为摄氏度")
to_fahrenheit_button = tk.Button(text="摄氏度转换为华氏度")
to_celcius_button.pack()
to_fahrenheit_button.pack()
# 绑定按钮事件
to_celcius_button.config(command=convert)
to_fahrenheit_button.config(command=convert)
# 循环运行窗口
window.mainloop()
以上就是使用 Tkinter 模块创建温度转换器的全过程。在学习过程中,我们涉及了 Tkinter 窗口、标签、输入框和按钮等 GUI 元素的使用方法,并成功实现了摄氏度和华氏度的相互转换。这将为大家在以后的 GUI 编程中提供有力的帮助。