用tkinter写一个学生管理系统并给出代码
时间: 2024-01-28 17:05:38 浏览: 69
以下是一个简单的学生管理系统的代码示例,使用Python的Tkinter库实现:
```python
from tkinter import *
from tkinter import ttk
class StudentManagementSystem:
def __init__(self, master):
self.master = master
self.master.title("学生管理系统")
self.master.geometry("400x300")
self.create_widgets()
def create_widgets(self):
# 创建标签和输入框
self.name_label = Label(self.master, text="姓名")
self.name_label.grid(row=0, column=0)
self.name_entry = Entry(self.master)
self.name_entry.grid(row=0, column=1)
self.age_label = Label(self.master, text="年龄")
self.age_label.grid(row=1, column=0)
self.age_entry = Entry(self.master)
self.age_entry.grid(row=1, column=1)
self.gender_label = Label(self.master, text="性别")
self.gender_label.grid(row=2, column=0)
self.gender_entry = ttk.Combobox(self.master, values=["男", "女"])
self.gender_entry.grid(row=2, column=1)
# 创建按钮
self.add_button = Button(self.master, text="添加", command=self.add_student)
self.add_button.grid(row=3, column=0)
self.delete_button = Button(self.master, text="删除", command=self.delete_student)
self.delete_button.grid(row=3, column=1)
self.show_button = Button(self.master, text="显示", command=self.show_students)
self.show_button.grid(row=4, column=0, columnspan=2)
# 创建列表框
self.student_listbox = Listbox(self.master)
self.student_listbox.grid(row=5, column=0, columnspan=2)
def add_student(self):
# 从输入框中获取学生信息
name = self.name_entry.get()
age = self.age_entry.get()
gender = self.gender_entry.get()
# 添加学生到列表框中
self.student_listbox.insert(END, f"{name}({gender}, {age})")
# 清空输入框
self.name_entry.delete(0, END)
self.age_entry.delete(0, END)
self.gender_entry.current(0)
def delete_student(self):
# 获取当前选中的学生的索引
index = self.student_listbox.curselection()
# 如果有选中的学生,则从列表框中删除
if index:
self.student_listbox.delete(index)
def show_students(self):
# 遍历列表框中的所有学生,并打印到控制台
for i in range(self.student_listbox.size()):
print(self.student_listbox.get(i))
if __name__ == "__main__":
root = Tk()
app = StudentManagementSystem(root)
root.mainloop()
```
这个学生管理系统界面中包括三个输入框(姓名、年龄、性别),三个按钮(添加、删除、显示)和一个列表框(用于显示当前已经添加的学生信息)。在输入框中输入学生信息后,点击“添加”按钮可以将学生信息添加到列表框中,点击“删除”按钮可以删除当前选中的学生信息,点击“显示”按钮可以将当前所有的学生信息打印到控制台中。
阅读全文