Обновление tk.OptionMenu динамически
Здесь у меня есть простой графический интерфейс, где пользователь может выбрать файл.csv. Фрейм данных создается из этого файла, а список создается из индекса этого фрейма данных.
Существует tk.OptionMenu, который я хотел бы отобразить индекс, но я не могу получить tk.OptionMenu для обновления после выбора файла. Как я могу заставить это работать?
Мне известно о label.config() для использования с меткой, но я не думаю, что он применим к OptionMenus.
import pandas as pd
import tkinter as tk
from tkinter import filedialog
class GUI(tk.Tk):
def __init__(self, *args, **kwargs):
tk.Tk.__init__(self, *args, **kwargs)
tk.Tk.wm_title(self, "Big Data")
container = tk.Frame(self)
container.pack(side="top", fill="both", expand = True)
container.grid_rowconfigure(0, weight=1)
container.grid_columnconfigure(0, weight=1)
ftypes = [
('CSV files','*.csv')
]
options=('',)
def browsefunc():
filename = tk.filedialog.askopenfilename(filetypes=ftypes)
df = pd.read_csv(filename)
options = df.dtypes.index
pathlabel.config(text=filename)
print(filename)
return options
browsebutton = tk.Button(self, text="Browse", command=browsefunc, height=1, width=10)
browsebutton.pack()
pathlabel = tk.Label(self)
pathlabel.pack()
var = tk.StringVar(self)
var.set('Columns')
index_menu = tk.OptionMenu(self, var, *options)
index_menu.pack()
app = GUI()
app.mainloop()