Tkinter связывает опции для работы и вызывает их кнопкой - PullRequest
0 голосов
/ 21 марта 2019

У меня есть список параметров:

OPTIONS = [
 "Algorithm 1",
 "Algorithm 2"
]

Я хотел бы связать эту функцию ниже с параметром Алгоритм 1:

def combine_funcs(*funcs):
    def combined_func(*args, **kwargs):
        for f in funcs:
            f(*args, **kwargs)

    return combined_func

Вот что я пытался сделать:

 SelectedOptions = StringVar(top)
 SelectedOptions.set(OPTIONS[0])
 typeOption = OptionMenu(top, SelectedOptions, *OPTIONS)

Вот моя кнопка запуска:

 self.Button1 = tk.Button(top, command = functionschoose()) 
 self.Button1.place(relx=0.839, rely=0.917, height=35, width=62)

Вот моя функция, которая выбирает, какой алгоритм запустить

 def functionschoose():
         if SelectedOptions.get() == "Algorithm 1":
             return combine_funcs(popup_bonus, callback)

         else:
             print "second func" # this is still empty because the algorithm has not been implemented yet.

На данный момент алгоритм получил с помощью .get () всегда кажется алгоритмом 1

Я полагаю, что это происходит из-за SelectedOptions.set (OPTIONS [0])

Есть ли способ отслеживать выбор пользователя в реальном времени?

Спасибо.

...