使用tkinter创建实验数据录入界面:含3-7文本框及计算、保存按钮,数据结果存文件。
以下是一个简单的示例代码,包含3个单行文本框、一个计算按钮和一个保存按钮。计算按钮将计算文本框中的数值并在结果文本框中显示,保存按钮将保存所有文本框中的数值和结果到一个文本文件中。
```python
import tkinter as tk
class DataEntryGUI:
def __init__(self, master):
self.master = master
master.title("实验数据录入")
# 创建文本框
self.entry1 = tk.Entry(master)
self.entry2 = tk.Entry(master)
self.entry3 = tk.Entry(master)
self.result = tk.Entry(master, state='readonly')
# 创建标签
tk.Label(master, text="数据1").grid(row=0)
tk.Label(master, text="数据2").grid(row=1)
tk.Label(master, text="数据3").grid(row=2)
tk.Label(master, text="结果").grid(row=3)
# 放置文本框
self.entry1.grid(row=0, column=1)
self.entry2.grid(row=1, column=1)
self.entry3.grid(row=2, column=1)
self.result.grid(row=3, column=1)
# 创建按钮
self.calculate_button = tk.Button(master, text="计算", command=self.calculate)
self.calculate_button.grid(row=4, column=0, pady=10)
self.save_button = tk.Button(master, text="保存", command=self.save)
self.save_button.grid(row=4, column=1, pady=10)
def calculate(self):
# 计算结果并显示
try:
data1 = float(self.entry1.get())
data2 = float(self.entry2.get())
data3 = float(self.entry3.get())
result = data1 + data2 + data3
self.result.config(state='normal')
self.result.delete(0, tk.END)
self.result.insert(0, result)
self.result.config(state='readonly')
except ValueError:
self.result.config(state='normal')
self.result.delete(0, tk.END)
self.result.insert(0, "输入错误")
self.result.config(state='readonly')
def save(self):
# 保存数据到文件
try:
data1 = float(self.entry1.get())
data2 = float(self.entry2.get())
data3 = float(self.entry3.get())
result = float(self.result.get())
with open("data.txt", "w") as f:
f.write("数据1: {}
".format(data1))
f.write("数据2: {}
".format(data2))
f.write("数据3: {}
".format(data3))
f.write("结果: {}
".format(result))
except ValueError:
pass
root = tk.Tk()
gui = DataEntryGUI(root)
root.mainloop()
```
免责声明:
以上内容除特别注明外均来源于网友提问,创作工场回答,未经许可,严谨转载。