请用python语言设计一个迷你选课系统,单击课程或学分的列表框可实现联动选课功能,选课后,可将所选课程和学分在文本框中显示,如点击按钮“军事理论”显示文本“已选择军事理论1.5学分”
时间: 2024-11-14 19:20:31 浏览: 21
首先,我们要创建一个简单的Python GUI应用来模拟这个迷你选课系统。我们可以使用Tkinter库,这是Python内置的一个简单GUI工具包。以下是基本的步骤和代码:
```python
import tkinter as tk
# 创建主窗口
root = tk.Tk()
root.title("Mini Course Selection System")
# 定义变量存储选择的课程和学分
selected_course = ""
selected_credits = ""
# 课程选项列表
courses = ["军事理论", "计算机科学", "数学分析"]
course_listbox = tk.Listbox(root)
for course in courses:
course_listbox.insert(tk.END, course)
# 学分选项列表
credits_list = {"军事理论": 1.5, "计算机科学": 4, "数学分析": 3}
credit_label = tk.Label(root, text="学分:")
credit_entry = tk.Entry(root)
# 事件绑定:当课程选择发生变化时更新学分显示
def update_credits():
selected_course = course_listbox.get(tk.ACTIVE)
if selected_course in credits_list:
credit_entry.delete(0, tk.END)
credit_entry.insert(tk.END, f"{selected_course} {credits_list[selected_course]}学分")
# 添加事件监听
course_listbox.bind("<<ListboxSelect>>", update_credits)
# 按钮添加和事件处理
button = tk.Button(root, text="选择", command=lambda: update_credits())
button.grid(row=1, column=0)
# 显示结果文本框
result_text = tk.Text(root, width=20, height=1)
result_text.insert(tk.END, f"已选择{selected_course} {selected_credits}学分")
result_text.grid(row=2, columnspan=2)
# 开始应用程序
root.mainloop()
阅读全文