设计一个带图形界面的通过点击按钮实现加、减、乘、除功能的简单计算器。 最终的计算器效果可以参考如下:
时间: 2023-12-15 16:30:34 浏览: 49
为了设计一个带图形界面的简单计算器,我们可以使用Python的Tkinter模块。下面是一个实现加、减、乘、除功能的简单计算器的代码示例:
```python
import tkinter as tk
class Calculator:
def __init__(self, master):
self.master = master
master.title("简单计算器")
# 创建显示结果的文本框
self.result_var = tk.StringVar()
self.result_var.set("")
self.result_entry = tk.Entry(master, textvariable=self.result_var, width=20, font=('Arial', 14))
self.result_entry.grid(row=0, column=0, columnspan=4)
# 创建按钮
self.create_button("7", 1, 0)
self.create_button("8", 1, 1)
self.create_button("9", 1, 2)
self.create_button("/", 1, 3)
self.create_button("4", 2, 0)
self.create_button("5", 2, 1)
self.create_button("6", 2, 2)
self.create_button("*", 2, 3)
self.create_button("1", 3, 0)
self.create_button("2", 3, 1)
self.create_button("3", 3, 2)
self.create_button("-", 3, 3)
self.create_button("0", 4, 0)
self.create_button(".", 4, 1)
self.create_button("C", 4, 2)
self.create_button("+", 4, 3)
self.create_button("=", 5, 0, columnspan=4)
def create_button(self, text, row, column, rowspan=1, columnspan=1):
button = tk.Button(self.master, text=text, width=5, height=2, font=('Arial', 14),
command=lambda: self.button_click(text))
button.grid(row=row, column=column, rowspan=rowspan, columnspan=columnspan)
def button_click(self, text):
if text == "C":
self.result_var.set("")
elif text == "=":
try:
result = eval(self.result_var.get())
self.result_var.set(str(result))
except:
self.result_var.set("Error")
else:
self.result_var.set(self.result_var.get() + text)
root = tk.Tk()
calculator = Calculator(root)
root.mainloop()
```
在这个计算器中,我们使用了Tkinter的Button和Entry控件来创建按钮和显示结果的文本框。当用户点击按钮时,我们使用lambda表达式将按钮的文本传递给button_click方法。在button_click方法中,我们根据按钮的文本执行相应的操作,例如清空文本框、计算结果等。