перестроить виджет при переключении кадра - PullRequest
0 голосов
/ 23 мая 2018

My tk имеет 2 кадра, каждый имеет древовидную структуру, созданную из пользовательского древовидного объекта.когда выбрана строка в древовидном представлении 1-го кадра, она сохраняется в переменной.когда пользователь переключается на 2-й кадр нажатием кнопки, значение, сохраненное в 1-м кадре, будет использоваться в качестве условия и отфильтровывает древовидную структуру во 2-м кадре.

Я собрал, пытаясь построить свой tkinter на основе структуры классаздесь: https://stackoverflow.com/a/7557028/6620144

Я добавил пользовательский объект древовидной структуры, который вызывается обоими кадрами.

main_tree_selected=None

class program(tk.Tk):
   def __init__(self, *args, **kwargs):
   ...
      for F in (mainpage, editpage):
         frame = F(container, self)
         .....


class mastertreeview(object):
   def __init__(self, connection, sel_statement, cond_clause=None, cond_value = None)):
   ....
   def populate_tree(self)
   ....


class mainpage(tk.Frame):
   def __init__(self, parent, controller):
   main_tree = mastertreeview(connection, sql_statement, where_clause)
   switch_button = tk.Button(command=lambda: self.controller.show_frame(editpage)
   ....


class editpage(tk.Frame):
   def __init__(self, parent, controller):
   edit_tree = mastertreeview(connection, sql_statement, where_clause, cond_value)
   ....

Я понимаю, что оба кадра настраиваются и строятся одновременно, включая дочернийвиджет. Мне было интересно, есть ли способ, которым я могу вызвать edit_tree древовидную структуру и повторно заполнить дерево при нажатии switch_button.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...