📅  最后修改于: 2023-12-03 15:19:18.082000             🧑  作者: Mango
使用 Python 和 Tkinter 库,我们可以轻松地创建一个简单的 GUI 计算器,它可以帮助我们进行基本的算术运算。这是一个很好的入门项目,可以让你学习如何使用 Tkinter 在 Python 中创建 GUI 应用程序。
在开始之前,确保你已经安装了 Python。我建议使用 Python 3.x,因为 Python 2.x 的支持已经停止了。除此之外,你需要在你的系统上安装 Tkinter 库。在大多数 Linux 发行版上,它已经自带了。如果你使用的是 Windows 或 macOS,请自行安装。
我们首先要做的是创建计算器的基本布局。我们将使用 Tkinter 提供的几个小部件来实现这一点。这些部件是:
以下是我们将要使用的 Python 代码片段:
import tkinter as tk
class Calculator:
def __init__(self, master):
self.master = master
master.title('简单计算器')
# 创建和显示输入框
self.input_text = tk.StringVar()
self.input_field = tk.Entry(master, textvariable=self.input_text, width=15, font=('Arial', 16))
self.input_field.pack(side=tk.TOP, pady=5)
# 创建按钮
self.button_frame = tk.Frame(master)
self.button_frame.pack(side=tk.TOP, pady=5)
self.create_button('7').grid(row=0, column=0)
self.create_button('8').grid(row=0, column=1)
self.create_button('9').grid(row=0, column=2)
self.create_button('+').grid(row=0, column=3)
self.create_button('4').grid(row=1, column=0)
self.create_button('5').grid(row=1, column=1)
self.create_button('6').grid(row=1, column=2)
self.create_button('-').grid(row=1, column=3)
self.create_button('1').grid(row=2, column=0)
self.create_button('2').grid(row=2, column=1)
self.create_button('3').grid(row=2, column=2)
self.create_button('*').grid(row=2, column=3)
self.create_button('C').grid(row=3, column=0)
self.create_button('0').grid(row=3, column=1)
self.create_button('=').grid(row=3, column=2)
self.create_button('/').grid(row=3, column=3)
def create_button(self, text):
return tk.Button(self.button_frame, text=text, width=4, height=2, font=('Arial', 16),
command=lambda: self.button_click(text))
def button_click(self, text):
# 获取输入框文本
input = self.input_text.get()
if text == 'C':
# 清空输入框
self.input_text.set('')
elif text == '=':
# 计算结果
try:
result = eval(input)
self.input_text.set(result)
except:
self.input_text.set('ERROR')
else:
# 添加字符到输入框
self.input_text.set(input + text)
root = tk.Tk()
app = Calculator(root)
root.mainloop()
在上面的代码中,我们创建了一个 Calculator
类,该类继承自 tkinter.Frame
。在 __init__
方法中,我们创建了输入框和按钮。create_button
方法用于创建按钮。button_click
方法用于处理按钮单击事件。
我们用 pack
方法将输入框和按钮框架放置在主窗口中。
在按钮的 command
参数中,我们使用了 lambda
表达式,以便我们可以将 button_click 方法的参数与按钮文本捆绑在一起。
我们可以在终端中运行代码来启动该应用程序。将上述代码保存在一个名为 calculator.py
的文件中,并用以下命令运行它:
python calculator.py
这将打开一个带有计算器应用程序的图形用户界面。
在此教程中,我们学习了如何使用 Python 和 Tkinter 库创建一个简单的 GUI 计算器。我们学习了如何创建和显示小部件、如何捆绑按钮单击事件以及如何在计算器中执行基本算术运算。该项目是学习 Tkinter 的很好的起点,你可以将其用作一个模板来创建更复杂的应用程序。