Estoy trabajando por primera vez en la codificación de un botón Examinar para un programa en Python3. He estado buscando en Internet y en este sitio, e incluso en la biblioteca estándar de Python.filedialog, tkinter y archivos de apertura
He encontrado ejemplos de código y explicaciones muy superficiales de cosas, pero no he podido encontrar nada que resuelva el problema que tengo directamente, o una explicación suficientemente buena para poder personalizar el código a mis necesidades.
Aquí es el fragmento relevante:
Button(self, text = "Browse", command = self.load_file, width = 10)\
.grid(row = 1, column = 0, sticky = W) .....
def load_file(self):
filename = filedialog.askopenfilename(filetypes = (("Template files", "*.tplate")
,("HTML files", "*.html;*.htm")
,("All files", "*.*")))
if filename:
try:
self.settings["template"].set(filename)
except:
messagebox.showerror("Open Source File", "Failed to read file \n'%s'"%filename)
return
El método es un híbrido de un cierto código que encontré en el camino con mis propias personalizaciones. Parece que finalmente lo hice funcionar (un poco), aunque no es exactamente como lo necesito.
Recibo este error cuando activo el botón 'Examinar': NameError: global name 'filedialog' is not defined
.
He encontrado problemas bastante similares en el camino, pero todas las soluciones sugeridas que he cubierto. Entré en la sección de ayuda de 'archivo de diálogo' de IDLE pero tampoco obtuve nada de allí.
¿A alguien le importaría proporcionar un desglose y un poco de orientación sobre esto; ninguno de mis libros lo aborda específicamente, y he comprobado todas las soluciones proporcionadas a otros: estoy perdido.
¿Lo ha importado? 'from tkinter import filedialog' –