Как получить выбор пользователя из диалогового окна открытия файла tkinterPython

Программы на Python
Ответить
Anonymous
 Как получить выбор пользователя из диалогового окна открытия файла tkinter

Сообщение Anonymous »

Похоже на этот вопрос, но немного отличается.
Я хочу различать два (или более) типа файлов, которые имеют общий суффикс, но внутренне различаются.
Пока у меня есть что-то вроде этого:

Код: Выделить всё

## import packages ##
import tkinter as tk
from tkinter import filedialog as fd

## Define file types and sufixes ##
FT_Labels=['Type10',
'Type20']
FT_suffixes=['*.xml','*.csv']
FILE_TYPES=[]
for Label,Suffix in zip(FT_Labels,FT_suffixes):
FILE_TYPES.append((Label,Suffix))

# Build the tuple for file dialog dropdown #
FILE_TYPES=tuple(FILE_TYPES)

## Get the file path ##
File_path = fd.askopenfilename(title='Select the file',
filetypes=FILE_TYPES)
## Detect the file type and process it##
if '.xml' in File_path:
# TESCAN file #
Type = 'XML'
#processAsXML(File_path)
elif '.csv' in File_path:
Type = 'CSV'
#processAsCSV(File_path)
Таким образом я определяю тип файла по суффиксу. Но в то время, когда мне нужно будет обрабатывать XML-файлы с разными структурами, этот подход не сработает.
Есть ли способ прочитать индекс выбранного пользователем фильтра в раскрывающемся меню? И в openfile, и в savefile
Что-то вроде MATLAB [file,location,INDX] = uigetfile(...), где INDX — это индекс выбранного фильтра.

Подробнее здесь: https://stackoverflow.com/questions/798 ... pen-dialog
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «Python»