用python写一个gui界面计算器
时间: 2023-11-19 21:06:07 浏览: 101
好的,以下是一个简单的GUI界面计算器示例代码:
```python
import tkinter as tk
class Calculator:
def __init__(self, master):
self.master = master
master.title("Calculator")
# 创建文本框
self.display = tk.Entry(master, width=30, justify='right')
self.display.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, columnspan=1, rowspan=1):
button = tk.Button(self.master, text=text, width=5, height=2, command=lambda:self.button_click(text))
button.grid(row=row, column=column, columnspan=columnspan, rowspan=rowspan)
def button_click(self, text):
if text == 'C':
self.display.delete(0, tk.END)
elif text == '=':
try:
result = eval(self.display.get())
self.display.delete(0, tk.END)
self.display.insert(0, result)
except:
self.display.delete(0, tk.END)
self.display.insert(0, 'Error')
else:
self.display.insert(tk.END, text)
# 创建窗口
root = tk.Tk()
app = Calculator(root)
root.mainloop()
```
这个计算器包括一个文本框和数字和运算符按钮。当用户按下按钮时,数字或运算符将被添加到文本框中。当用户按下“=”按钮时,计算结果将被显示在文本框中。如果计算出错,文本框将显示“错误”。
阅读全文