使用按钮导出文件后,如何自动关闭 tkinter window

How do I close a tkinter window automatically, after using a button to export a file

我使用以下 python 代码生成一个弹出窗口 window,其中包含一个按钮,用户按下该按钮可将我的 Raw_dataframe 导出到 csv。我想要的是,一旦用户按下按钮并完成命名和导出 csv,弹出 window 自动关闭。目前,弹出窗口只是保持打开状态。

这是功能代码:

    root= tk.Tk()

canvas1 = tk.Canvas(root, width = 300, height = 300, bg = 'lightsteelblue2', relief = 'raised')
canvas1.pack()

def exportCSV ():
    global df

    export_file_path = filedialog.asksaveasfilename(defaultextension='.csv')
    Raw_dataframe.to_csv (export_file_path, index = None, header=True)


saveAsButton_CSV = tk.Button(text='Export Raw Dataframe to CSV', command=exportCSV, bg='green', fg='white', font=('helvetica', 12, 'bold'))
canvas1.create_window(150, 150, window=saveAsButton_CSV)

root.mainloop()

关键是我不想创建另一个按钮来关闭弹出窗口(这似乎是其他问题中的常见答案。)我希望弹出窗口自动关闭。

我试过添加以下代码

def quit(self):
self.destroy()
exit()

如其他帖子中所建议,但我似乎无法正确调用它。 我也试过在我的 canvas1.create_window 命令后添加 root.destroy(),但这似乎也没有用。

exportCSV() 更改为:

def exportCSV ():
    global df

    export_file_path = filedialog.asksaveasfilename(defaultextension='.csv')
    Raw_dataframe.to_csv (export_file_path, index = None, header=True)

    root.destroy() #!make sure it is called INSIDE the function