我有一个gui,它在按下按钮时初始化askopenfilename,但我想能够解释用户在askopenfilename对话框中选择cancel时的情况
这是我的函数来处理点击按钮,但如果语句行似乎不工作!
def openFileClicked(self):
self.filename=filedialog.askopenfilename()
if self.filename== None:
self.e.config(state= NORMAL)
self.e.delete(0,END)
self.e.insert(0,"...")
self.e.config(state="readonly")
self.e.config(state= NORMAL)
self.e.delete(0,END)
self.e.insert(0, self.filename)
self.e.config(state="readonly")
print ((self.filename))
.askopenfilename()
取消时返回空字符串,而不是无。因此,您可以与''
或False
进行比较。为了获得代码示例:至少我是这么做的,你可能有自己的偏好。
我知道这是几年后,但我发现一个怪癖是相关的,找不到任何信息。希望这些信息对任何遇到这个答案的人都有用。
基本上,如前所述,单击“取消”将返回空字符串。。。 除非您先选择/突出显示文件,然后单击“取消”。 这似乎返回了一个空元组!!!
使用python 2.6.6(IDK,ask RedHat)
运行以下代码将生成后续结果
f_picked = tkFileDialog.askopenfilename() test = type(f_picked) print (test)
结果:
<type 'unicode'>
未选择任何内容,取消单击<type 'tuple'>
文件已选定,取消单击<type 'str'>
文件已选定,确定单击<type 'tuple'>
选择了多个文件,确定单击相关问题 更多 >
编程相关推荐