(根据Selection控件实例的代码与功能)利用tkinter编写一个通讯录管理系统
时间: 2024-09-15 08:14:50 浏览: 62
在Tkinter库中,你可以使用Selection控件(比如Listbox或Combobox)来构建一个简单的通讯录管理系统。以下是一个基本的例子:
```python
import tkinter as tk
class ContactManager(tk.Tk):
def __init__(self):
super().__init__()
self.title("通讯录管理系统")
self.geometry("400x600")
# 创建一个列表框显示联系人
self.contact_list = tk.Listbox(self, width=30, height=20)
self.contact_list.pack(pady=20)
# 添加一些示例联系人
self.add_contact("张三", "zhangsan@example.com")
self.add_contact("李四", "lisi@example.com")
self.add_contact("王五", "wangwu@example.com")
# 下拉菜单选择操作
select_action = tk.StringVar()
select_action.set("查看") # 默认选项
options = ["查看", "添加", "删除"]
action_dropdown = tk.OptionMenu(self, select_action, *options)
action_dropdown.pack()
# 绑定事件处理函数
select_action.trace("w", lambda name, index, mode, var=select_action: self.action_selected(var.get()))
def add_contact(self, name, email):
self.contact_list.insert(tk.END, f"{name}: {email}")
def action_selected(self, action):
if action == "查看":
selected_index = self.contact_list.curselection() # 获取当前选中的索引
if selected_index:
contact_info = self.contact_list.get(selected_index[0])
print(f"正在查看:{contact_info}")
elif action == "添加":
pass # 实现添加功能
elif action == "删除":
pass # 实现删除功能
if __name__ == "__main__":
app = ContactManager()
app.mainloop()
```
这个程序创建了一个窗口,包含一个列表框用于显示联系人信息,一个下拉菜单让用户选择操作(查看、添加、删除),然后通过`action_selected`函数响应用户的操作。
阅读全文