Я хочу сделать небольшую программу, которая возьмет список папок в каталоге и перечислит их в меню выбора. Я использовал optionmenu, но я видел людей, использующих combomenu, так что с радостью изменится, если этолучший вариант.Как только выбор будет сделан в меню проекта, я хочу, чтобы второе меню обновлялось папками внутри меню выбранного проекта.Это будет то же самое для последнего шага, но я думаю, что это будет очень похожий процесс.Также есть ли хороший способ распечатать выбор опционального меню?
Спасибо!
import os, sys
from tkinter import *
from tkinter import ttk
def findshots(*args):
print("change")
return 1
# -------- project selection ---------
currentprojects = './dummy/projects'
currentprojectslist = os.listdir(currentprojects)
# --------- shots list -------------------
projectselection = findshots()
currentshots = "./dummy/projects/{}/shots".format(currentprojectslist[projectselection])
currentshotslist = os.listdir(currentshots)
# ---------- script list -------------------
shotselection = 0
currentnk = "./dummy/projects/{}/shots/{}/nk".format(currentprojectslist[projectselection], currentshotslist[
shotselection])
currentnklist = os.listdir(currentnk)
# ----------------------------------------------
# --------MAIN--------------
root = Tk()
root.geometry("1000x1000+800+100")
root.resizable(width=False, height=False)
# ------- project -----------
projectmenuvar = StringVar(root)
projectmenuvar.set(currentprojectslist[0])
projectmenuvar.trace("w", findshots)
projectmenuvar = OptionMenu(root, projectmenuvar, *currentprojectslist)
projectmenuvar.pack()
# ----------- shot -------------
shotsmenuvar = StringVar(root)
shotsmenuvar.set(currentshotslist[0])
shotsmenuvar = OptionMenu(root, shotsmenuvar, *currentshotslist)
shotsmenuvar.pack()
root.mainloop()