Я работаю в первый раз при кодировании кнопки "Обзор" для программы в 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, но ничего не получил оттуда.
Будет ли кто-то думать о разрыве и небольшом руководстве по этому поводу; ни одна из моих книг не упоминает об этом конкретно, и я проверил все решения, предоставленные другим, - я потерял.