【发布时间】:2022-01-02 22:45:24
【问题描述】:
我不知道如何从 filedialog.askopenfilename 存储值。现在我将值保存到局部变量,但我想稍后在其他函数中使用这个值。我不能返回这个值,因为我在创建按钮时调用了函数。但是我想避免使用全局变量。我怎样才能做到这一点?还有其他方法吗? 这是代码:
from tkinter import Tk, StringVar, ttk
from tkinter import filedialog
from tkinter import messagebox
def browse_files():
filename = filedialog.askopenfilename(initialdir = "/",
title = "Select a File",
filetypes = (("Text files",
"*.txt*"),
("all files",
"*.*")))
print(filename)
root = Tk()
button1 = ttk.Button(root,text='Browse', command=browse_files)
button1.grid(row=0,column=0)
【问题讨论】:
-
在
browse_files()开头添加global filename,使filename成为全局变量。请注意,filename在执行browse_files()之前不存在。 -
@acw1668 我知道,但我想避免使用全局变量。
-
然后使用类。
-
@acw1668 怎么用?
标签: python tkinter button tk filedialog