Issue 26405: tkinter askopenfilename doubleclick issue on windows (original) (raw)
Issue is that doubleclick passes a click down to a parent window, and if it happens that you doubleclicking to select a file directly above some button, that button gets pressed. Here is the code to demonstrate this issue:
import tkinter as tk from tkinter import filedialog, ttk
class MainWindow(ttk.Frame): def init(self, root, *args, **kwargs): super().init(root, *args, **kwargs) self.pack() btnoptions = {'expand':True, 'fill': 'both'} btn = ttk.Button(self, text='Select', command=self.ask_openfile) btn.pack(**btnoptions)
def ask_openfile(self):
filename = filedialog.askopenfilename()
return filenameif name=='main': root = tk.Tk() root.geometry('600x300') MainWindow(root).pack(expand=True, fill='both', side='top') root.mainloop()
I observed the same behavior on two different computers, one running win10, another win7, both using the latest python 3.5.1 installation from python.org