import tkinter as tk

def submit():
    name = entry_name.get()
    age = entry_age.get()
    gender = gender_var.get()
    courses = [course_list.get(i) for i in course_list.curselection()]
    agree = agree_var.get()
    
    result_text = f"Name: {name}\\nAge: {age}\\nGender: {gender}\\nCourses: {', '.join(courses)}\\nAgreed: {'Yes' if agree else 'No'}"
    result_label.config(text=result_text)

root = tk.Tk()
root.title("Student Registration Form")
root.geometry("350x400")

# Name
tk.Label(root, text="Name:").grid(row=0, column=0, sticky="w", padx=10, pady=5)
entry_name = tk.Entry(root)
entry_name.grid(row=0, column=1, padx=10, pady=5)

# Age
tk.Label(root, text="Age:").grid(row=1, column=0, sticky="w", padx=10, pady=5)
entry_age = tk.Entry(root)
entry_age.grid(row=1, column=1, padx=10, pady=5)

# Gender (Radio Buttons)
tk.Label(root, text="Gender:").grid(row=2, column=0, sticky="w", padx=10, pady=5)
gender_var = tk.StringVar(value="Male")
tk.Radiobutton(root, text="Male", variable=gender_var, value="Male").grid(row=2, column=1, sticky="w")
tk.Radiobutton(root, text="Female", variable=gender_var, value="Female").grid(row=2, column=1)

# Courses (Listbox)
tk.Label(root, text="Courses:").grid(row=3, column=0, sticky="nw", padx=10, pady=5)
course_list = tk.Listbox(root, selectmode="multiple", height=5)
courses = ["Math", "Physics", "Chemistry", "Biology", "Computer Science"]
for course in courses:
    course_list.insert(tk.END, course)
course_list.grid(row=3, column=1, padx=10, pady=5)

# Agree to Terms (Checkbutton)
agree_var = tk.BooleanVar()
tk.Checkbutton(root, text="I agree to the terms and conditions", variable=agree_var).grid(row=4, column=0, columnspan=2, padx=10, pady=5)

# Submit Button
tk.Button(root, text="Submit", command=submit).grid(row=5, column=0, columnspan=2, pady=10)

# Result Label
result_label = tk.Label(root, text="", fg="blue")
result_label.grid(row=6, column=0, columnspan=2, padx=10, pady=10)

root.mainloop()