Я впервые работаю над кодированием кнопки «Обзор» для программы на Python3. Я искал в Интернете и на этом сайте, и даже в стандартной библиотеке Python.
Я нашел пример кода и очень поверхностные объяснения вещей, но я не смог найти ничего, что решает проблему, с которой я столкнулся, или достаточно хорошего объяснения, чтобы я мог настроить код под свои нужды.
Вот соответствующий фрагмент:
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
Метод представляет собой гибрид некоторого кода, который я нашел по пути с моими собственными настройками. Кажется, я наконец-то заставил его работать (вроде), хотя это не совсем то, что мне нужно.
Я получаю эту ошибку, когда активирую кнопку «Обзор»: NameError: global name 'filedialog' is not defined
.
Я обнаружил довольно похожие проблемы на этом пути, но все предложенные мной решения были рассмотрены. Я вошел в раздел справки 'filedialog' IDLE, но тоже ничего не нашел.
Будет ли кто-то возражать против того, чтобы дать паузу и небольшое руководство по этому вопросу; ни одна из моих книг не посвящена этому конкретно, и я проверил все решения, предоставленные другим, - я потерян.