Button zum Öffnen eines Open File Dialogs
Code: Alles auswählen
open_file_button = Button(main_window, image=open_button_enabled, width=200, borderwidth=0, command=threading.Thread(target=browse_files).start())
Code: Alles auswählen
def browse_files():
global df
file = filedialog.askopenfilename(initialdir="/", title="Select a file",
filetypes=(("Excel files", "*.xlsx*"), ("CSV files", "*.csv")))
if file is not None and file.endswith(".xlsx"):
df = pd.read_excel(f"{file}", sheet_name=None)
df = clean_dataframe(df)
if file is not None and file.endswith(".csv"):
df = pd.read_csv(f"{file}", encoding="utf-8")
df = clean_dataframe(df)
Mein zweiter Gedanke: Vielleicht muss ich die gesamte Oberfläche in einen eigenen Thread packen, damit der erste Gedanke funktionieren kann. Aber eigentlich läuft ja meines Wissens nach alles, was nicht explizit einem Thread zugewiesen wird, auf dem Main-Thread, daher würde das auch keinen Sinn ergeben. Ein schnelles ausprobieren hat gezeigt, dass auch das nicht die Lösung ist.
Hat jemand von euch einen Hinweis für mich oder Ideen, wie der File Dialog erst bei Klick auf den Button angezeigt wird und zugleich der Rest der GUI bedienbar bleibt?
Besten Dank & liebe Grüße