产妇信息批量添加与显示
时间: 2023-12-16 18:04:50 浏览: 32
好的,下面是一个产妇信息批量添加与显示的示例,基于tkinter和sqlite3模块:
```python
import tkinter as tk
import sqlite3
# 创建数据库连接
conn = sqlite3.connect("maternity.db")
cursor = conn.cursor()
# 创建产妇信息表
cursor.execute('''CREATE TABLE IF NOT EXISTS MaternityInfo
(id INTEGER PRIMARY KEY AUTOINCREMENT,
name TEXT,
age INTEGER,
height REAL,
weight REAL)''')
# 创建主窗口
root = tk.Tk()
# 创建标签和文本框
tk.Label(root, text="姓名:").grid(row=0, column=0)
name_entry = tk.Entry(root)
name_entry.grid(row=0, column=1)
tk.Label(root, text="年龄:").grid(row=1, column=0)
age_entry = tk.Entry(root)
age_entry.grid(row=1, column=1)
tk.Label(root, text="身高:").grid(row=2, column=0)
height_entry = tk.Entry(root)
height_entry.grid(row=2, column=1)
tk.Label(root, text="体重:").grid(row=3, column=0)
weight_entry = tk.Entry(root)
weight_entry.grid(row=3, column=1)
# 定义添加信息的函数
def add_info():
name = name_entry.get()
age = age_entry.get()
height = height_entry.get()
weight = weight_entry.get()
# 将信息插入到数据库中
cursor.execute("INSERT INTO MaternityInfo (name, age, height, weight) VALUES (?, ?, ?, ?)", (name, age, height, weight))
conn.commit()
# 显示添加成功的提示信息
tk.messagebox.showinfo(title="提示", message="信息添加成功!")
# 创建添加按钮
tk.Button(root, text="添加", command=add_info).grid(row=4, column=0)
# 创建显示信息的列表框
listbox = tk.Listbox(root)
listbox.grid(row=0, column=2, rowspan=5)
# 定义显示信息的函数
def show_info():
# 清空列表框
listbox.delete(0, tk.END)
# 从数据库中读取信息
cursor.execute("SELECT * FROM MaternityInfo")
results = cursor.fetchall()
# 将信息显示在列表框中
for row in results:
listbox.insert(tk.END, f"姓名:{row[1]},年龄:{row[2]},身高:{row[3]},体重:{row[4]}")
# 创建显示按钮
tk.Button(root, text="显示", command=show_info).grid(row=4, column=1)
# 进入消息循环
root.mainloop()
# 关闭数据库连接
cursor.close()
conn.close()
```
这个示例中,我们创建了一个主窗口,并在主窗口上创建了四个标签和四个文本框,用于输入产妇的姓名、年龄、身高和体重。同时,我们还创建了一个“添加”按钮和一个“显示”按钮。点击“添加”按钮后可以将输入的信息保存到数据库中,点击“显示”按钮后可以从数据库中读取所有产妇的信息,并将其显示在列表框中。最后,我们进入消息循环。