如何用Python实现一个具备GUI界面的好友管理系统的代码示例?
时间: 2024-12-01 16:19:09 浏览: 14
在Python中,我们可以使用Tkinter库来创建一个简单的图形用户界面(GUI),用于好友管理系统。以下是一个基础的示例,它包含了添加、删除好友的功能:
```python
import tkinter as tk
from tkinter import messagebox
class FriendsManager:
def __init__(self, master):
self.master = master
self.friends_list = []
# 创建主窗口
self.master.title("好友管理系统")
self.master.geometry('400x300')
# 添加好友按钮
add_friend_button = tk.Button(master, text="添加好友", command=self.add_friend)
add_friend_button.pack(pady=10)
# 删除好友按钮
delete_friend_button = tk.Button(master, text="删除好友", command=self.delete_friend)
delete_friend_button.pack(pady=10)
# 显示好友列表
self.display_friends()
def add_friend(self):
name = input("请输入新朋友的名字:")
if name:
self.friends_list.append(name)
messagebox.showinfo("添加成功", f"已将'{name}'添加到好友列表。")
def delete_friend(self):
selected_item = self.select_friend()
if selected_item:
self.friends_list.remove(selected_item)
messagebox.showinfo("删除成功", f"已从好友列表移除'{selected_item}'.")
def display_friends(self):
friend_list_frame = tk.Frame(master)
friend_list_frame.pack()
for i, friend in enumerate(self.friends_list, start=1):
button = tk.Button(friend_list_frame, text=f"{i}. {friend}", width=20,
command=lambda x=friend: self.select_friend(x))
button.grid(row=i // 5, column=i % 5, padx=5, pady=5)
def select_friend(self, selected=None):
if not selected:
return None
return tk.messagebox.askquestion("确认操作", f"确定删除'{selected}'吗?")
# 启动主循环
root = tk.Tk()
manager = FriendsManager(root)
root.mainloop()
```
在这个示例中,我们创建了一个`FriendsManager`类,它包含了一个好友列表,并有两个按钮分别用于添加和删除好友。当点击添加或删除好友按钮时,会触发相应的函数。选择删除好友时,还会弹出一个确认框。
请注意这只是一个基本的框架,实际应用中你可能需要更复杂的数据库交互、验证和错误处理。此外,对于大规模的数据存储和操作,你可能要考虑使用数据库连接而不是直接存储在内存中。
阅读全文