我在从 tkinter 返回变量时遇到问题Button
命令。这是我的代码:
class trip_calculator:
def __init__(self):
file = self.gui()
def gui(self):
returned_values = {}
def open_file_dialog():
returned_values['filename'] = askopenfilename()
root = Tk()
Button(root, text='Browse', command= open_file_dialog).pack()
filepath = returned_values.get('filename')
root.mainloop()
return filepath
root.quit()
我只想返回文本文件的文件路径。 tkinter 窗口已打开,我可以浏览并选择文件,但随后却无法return
路径。
你的代码现在的样子,filepath
在您的窗口出现给用户之前就被分配了它的值。因此字典不可能包含用户最终选择的文件名。最简单的修复方法是filepath = returned_values.get('filename')
after mainloop
,因此直到用户关闭窗口时主循环结束时才会分配它。
from Tkinter import *
from tkFileDialog import *
class trip_calculator:
def gui(self):
returned_values = {}
def open_file_dialog():
returned_values['filename'] = askopenfilename()
root = Tk()
Button(root, text='Browse', command= open_file_dialog).pack()
root.mainloop()
filepath = returned_values.get('filename')
return filepath
root.quit()
print(trip_calculator().gui())
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)