Python+Tkinter:打造可添加、编辑的简易待办事项列表应用
下面是一个使用Python和Tkinter库创建的简单待办事项列表应用的示例代码。这个应用允许用户添加和编辑待办事项。 ```python import tkinter as tk from tkinter import messagebox class TodoApp: def __init__(self, root): self.root = root self.root.title("待办事项列表") # 创建待办事项列表 self.tasks = [] # 创建界面元素 self.task_entry = tk.Entry(root, width=40) self.task_entry.grid(row=0, column=0, padx=10, pady=10) self.add_button = tk.Button(root, text="添加", command=self.add_task) self.add_button.grid(row=0, column=1, padx=10, pady=10) self.task_listbox = tk.Listbox(root, width=50, height=15) self.task_listbox.grid(row=1, column=0, columnspan=2, padx=10, pady=10) self.edit_button = tk.Button(root, text="编辑", command=self.edit_task) self.edit_button.grid(row=2, column=0, padx=10, pady=10) self.delete_button = tk.Button(root, text="删除", command=self.delete_task) self.delete_button.grid(row=2, column=1, padx=10, pady=10) def add_task(self): task = self.task_entry.get() if task: self.tasks.append(task) self.task_listbox.insert(tk.END, task) self.task_entry.delete(0, tk.END) else: messagebox.showwarning("警告", "请输入待办事项") def edit_task(self): selected_task_index = self.task_listbox.curselection() if selected_task_index: new_task = self.task_entry.get() if new_task: self.tasks[selected_task_index[0]] = new_task self.task_listbox.delete(selected_task_index) self.task_listbox.insert(selected_task_index, new_task) self.task_entry.delete(0, tk.END) else: messagebox.showwarning("警告", "请输入新的待办事项") else: messagebox.showwarning("警告", "请选择要编辑的待办事项") def delete_task(self): selected_task_index = self.task_listbox.curselection() if selected_task_index: self.task_listbox.delete(selected_task_index) self.tasks.pop(selected_task_index[0]) else: messagebox.showwarning("警告", "请选择要删除的待办事项") if __name__ == "__main__": root = tk.Tk() app = TodoApp(root) root.mainloop() ``` 代码说明: 1. Tkinter库:用于创建图形用户界面(GUI)。 2. TodoApp类:封装了待办事项列表应用的主要功能。 3. add_task方法:将用户输入的待办事项添加到列表和列表框中。 4. edit_task方法:允许用户编辑选中的待办事项。 5. delete_task方法:删除选中的待办事项。 额外需要注意的逻辑点: 1. 输入验证:在添加和编辑待办事项时,确保用户输入不为空。 2. 选中项验证:在编辑和删除操作前,确保用户已选中一个待办事项。 3. 列表更新:在添加、编辑和删除操作后,及时更新列表框和任务列表。 ######[AI写代码神器 | 775点数解答 | 2025-02-15 19:44:21]
- Python 实现:超详细在线聊天程序客户端代码解析(阿里通义 | 1065点数解答 | 2024-11-11 21:22:36)249
- Python 超全在线聊天程序服务器端代码及改进方案揭秘(阿里通义 | 1152点数解答 | 2024-11-11 21:24:15)218
- Android 课程作业考试管理 APP 开发:全功能实现与上线优化之路(GPT | 84点数解答 | 2024-12-14 13:46:35)287
- Android 学生学习管理 APP:功能完备开发全攻略(字节豆包 | 30点数解答 | 2024-12-14 13:47:04)246
- Python Tkinter 代码剖析:GUI 程序搭建与窗口居中函数解析(字节豆包 | 314点数解答 | 2024-08-02 14:49:22)345
- Python 运行报错:urllib3 网络连接创建失败,原因及排查建议(字节豆包 | 161点数解答 | 2024-10-31 00:39:36)489
- jQuery 实现动态操作 DOM:打造可增删任务的待办事项列表应用(百度文心 | 1015点数解答 | 2024-10-26 23:41:22)447
- jQuery 打造实用待办事项列表:输入添加、点击删除一步到位!(阿里通义 | 1139点数解答 | 2024-10-29 08:44:48)363
- jQuery 实现动态操作 DOM:打造带添加与删除功能的待办事项列表应用(阿里通义 | 687点数解答 | 2024-10-29 09:25:06)376
- jQuery 实战:打造可添加与删除任务的待办事项列表应用(字节豆包 | 499点数解答 | 2024-10-29 20:40:48)287
- Python实现:打造交互式Tkinter聊天客户端(GPT | 1469点数解答 | 2024-10-30 13:14:13)322
- Python打造VIP追剧神器:开发要点与安全处理揭秘(DeepSeek | 282点数解答 | 2025-09-09 19:49:20)151