欢迎访问宙启技术站
智能推送

Python中使用App()函数创建一个简单的待办事项应用程序

发布时间:2023-12-24 06:43:40

在Python中创建一个简单的待办事项应用程序非常容易。我们可以使用Tkinter库来创建GUI,并使用App()函数来创建我们的应用程序。下面是一个使用例子,其中包含以下功能:

1. 添加任务:用户可以输入任务的标题和描述,然后按下"添加任务"按钮将任务添加到任务列表中。

2. 显示任务列表:用户可以按下"显示任务列表"按钮来显示当前的所有待办事项。

3. 删除任务:用户可以选择要删除的任务,并按下"删除任务"按钮将其从任务列表中删除。

from tkinter import *
from tkinter import messagebox

# 创建App类
class App:
    def __init__(self, root):
        self.root = root
        self.root.title("待办事项应用程序")
        self.root.geometry("400x400")

        # 创建待办事项列表
        self.task_list = Listbox(root, width=50)
        self.task_list.pack(pady=10)

        # 创建添加任务的标签、输入框和按钮
        self.task_label = Label(root, text="任务:")
        self.task_label.pack()
        self.task_name = Entry(root)
        self.task_name.pack(pady=5)
        self.task_desc_label = Label(root, text="描述:")
        self.task_desc_label.pack()
        self.task_desc = Entry(root)
        self.task_desc.pack(pady=5)
        self.add_button = Button(root, text="添加任务", command=self.add_task)
        self.add_button.pack(pady=10)

        # 创建显示任务列表和删除任务的按钮
        self.show_button = Button(root, text="显示任务列表", command=self.show_tasks)
        self.show_button.pack(pady=5)
        self.delete_button = Button(root, text="删除任务", command=self.delete_task)
        self.delete_button.pack(pady=5)

    # 定义添加任务的函数
    def add_task(self):
        task_name = self.task_name.get()
        task_desc = self.task_desc.get()

        if task_name.strip() == "":
            messagebox.showerror("错误", "请输入任务标题")
            return

        self.task_list.insert(END, task_name + " - " + task_desc)
        self.task_name.delete(0, END)
        self.task_desc.delete(0, END)

    # 定义显示任务列表的函数
    def show_tasks(self):
        tasks = self.task_list.get(0, END)
        messagebox.showinfo("任务列表", "
".join(tasks))

    # 定义删除任务的函数
    def delete_task(self):
        selected_task = self.task_list.get(self.task_list.curselection())
        self.task_list.delete(self.task_list.curselection())
        messagebox.showinfo("删除成功", f"已删除任务:{selected_task}")

# 创建主程序
if __name__ == "__main__":
    root = Tk()
    app = App(root)
    root.mainloop()

在这个例子中,我们首先导入Tkinter库,然后创建一个名为App的类来表示我们的应用程序。在__init__方法中,我们创建了应用程序的GUI界面,并初始化待办事项列表。

然后,我们定义了add_task函数来添加任务,该函数从输入框中获取任务的标题和描述,并将它们添加到任务列表中。如果标题为空,则会弹出一个错误消息框。

接下来,我们定义了show_tasks函数来显示当前所有的待办事项。该函数获取任务列表中的所有任务,并使用messagebox.showinfo函数来显示一个对话框,包含所有任务的文本。

最后,我们定义了delete_task函数来删除选定的任务。该函数获取当前选定的任务,并使用task_listdelete方法将其从列表中删除。然后,它弹出一个成功的消息框,显示已删除的任务。

最后,在主程序中,我们创建一个Tkinter的根窗口,然后创建一个App实例,并通过调用根窗口的mainloop方法来启动应用程序。

通过运行这个例子,你将得到一个简单的待办事项应用程序,可以方便地添加、显示和删除任务。