简易计算器,窗口界面自由发挥,编程实现两个整数的加、减、乘、除操作。要求如下: - 首先进行操作数文本框检验,检验输入数据是否为纯数字; - 通过分别单击加、减、乘、除按钮,对操作数1与操作数2进行相应加、减、乘、除操作,并且将其结果写入操作3文本框。
时间: 2023-07-10 19:11:40 浏览: 104
好的,这是一个简单的计算器程序,我可以为您提供一些思路和代码示例。首先,我们需要创建一个窗口界面,包含三个文本框和四个按钮,代码如下:
```python
import tkinter as tk
class Calculator:
def __init__(self):
self.window = tk.Tk()
self.window.title("简易计算器")
self.window.geometry("300x150")
tk.Label(self.window, text="操作数1:").grid(row=0, column=0)
self.num1_entry = tk.Entry(self.window)
self.num1_entry.grid(row=0, column=1)
tk.Label(self.window, text="操作数2:").grid(row=1, column=0)
self.num2_entry = tk.Entry(self.window)
self.num2_entry.grid(row=1, column=1)
tk.Label(self.window, text="结果:").grid(row=2, column=0)
self.result_entry = tk.Entry(self.window, state="readonly")
self.result_entry.grid(row=2, column=1)
tk.Button(self.window, text="+", command=self.add).grid(row=3, column=0)
tk.Button(self.window, text="-", command=self.sub).grid(row=3, column=1)
tk.Button(self.window, text="*", command=self.mul).grid(row=3, column=2)
tk.Button(self.window, text="/", command=self.div).grid(row=3, column=3)
def run(self):
self.window.mainloop()
def add(self):
if self.check_input():
num1 = int(self.num1_entry.get())
num2 = int(self.num2_entry.get())
result = num1 + num2
self.result_entry.config(state="normal")
self.result_entry.delete(0, "end")
self.result_entry.insert(0, str(result))
self.result_entry.config(state="readonly")
def sub(self):
if self.check_input():
num1 = int(self.num1_entry.get())
num2 = int(self.num2_entry.get())
result = num1 - num2
self.result_entry.config(state="normal")
self.result_entry.delete(0, "end")
self.result_entry.insert(0, str(result))
self.result_entry.config(state="readonly")
def mul(self):
if self.check_input():
num1 = int(self.num1_entry.get())
num2 = int(self.num2_entry.get())
result = num1 * num2
self.result_entry.config(state="normal")
self.result_entry.delete(0, "end")
self.result_entry.insert(0, str(result))
self.result_entry.config(state="readonly")
def div(self):
if self.check_input():
num1 = int(self.num1_entry.get())
num2 = int(self.num2_entry.get())
if num2 == 0:
self.result_entry.config(state="normal")
self.result_entry.delete(0, "end")
self.result_entry.insert(0, "除数不能为0")
self.result_entry.config(state="readonly")
else:
result = num1 / num2
self.result_entry.config(state="normal")
self.result_entry.delete(0, "end")
self.result_entry.insert(0, str(result))
self.result_entry.config(state="readonly")
def check_input(self):
try:
num1 = int(self.num1_entry.get())
num2 = int(self.num2_entry.get())
return True
except ValueError:
self.result_entry.config(state="normal")
self.result_entry.delete(0, "end")
self.result_entry.insert(0, "请输入纯数字")
self.result_entry.config(state="readonly")
return False
if __name__ == "__main__":
app = Calculator()
app.run()
```
在这个程序中,我们使用了 Tkinter 模块创建了一个窗口界面,并在窗口中添加了三个文本框和四个按钮。当用户单击加、减、乘、除按钮时,程序会调用相应的函数进行计算,并将结果写入结果文本框。在进行计算之前,程序会先检验操作数文本框中的输入是否为纯数字。如果不是纯数字,程序会在结果文本框中显示一条提示信息。
阅读全文