Как получить указанный c виджет на вкладке Notebook? - PullRequest
0 голосов
/ 29 апреля 2020

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

'класс CustomNB (ttk.Notebook): def init (self, topWindow): super (). init () self ["width"] = 505 self ["height"] = 200 self.enable_traversal () self.bind ("<>", self.selected_tab)

    self.addButtonList = list()

    self.v = StringVar()
    for i in range(3):
        self.cur_tab = "tab" + str(i)
        self.cur_tab = Frame(self)
        self.cur_tab_name = "Group " + chr(65 + i)
        self.add(self.cur_tab, text=self.cur_tab_name, sticky="e", compound="text")

        self.curGroup = Entry(self.cur_tab, width=5, justify="center", textvariable=self.v)
        self.curGroup.grid(row=0, column=1, sticky="NESW")
        # self.curGroup.bind("<Return>", self.chName)

        self.addButton = ttk.Button(self.cur_tab, text="Add File")
        self.addButton.grid(row=1, column=1, sticky="NESW ")
        # self.addButton.bind("<Button-1>", self.addFile)

        self.addButtonList.append(id(self.addButton))
        self.removeButton = ttk.Button(self.cur_tab, text="Remove File")
        self.removeButton.grid(row=2, column=1, sticky="NESW ")
        # self.removeButton.bind("<Button-1>", self.removeFile)

        self.cl = Label(self.cur_tab, width=5, height=1)
        self.cl.grid(row=3, column=1, sticky="NESW ")

        self.colorButton = ttk.Button(self.cur_tab, text="Choose Color")
        self.colorButton.grid(row=4, column=1, sticky="NESW")
        # self.colorButton.bind("<Button-1>", self.groupColor)

        self.selList = Listbox(self.cur_tab, width=70, height=12, bg="#ADADAD",
                               selectmode=EXTENDED)
        self.selList.grid(row=0, column=0, columnspan=1, rowspan=5)
        self.curGroup.insert(0, self.cur_tab_name)

'

Как получить и управлять содержимым вкладок в индивидуальном порядке? Например, я хочу изменить текст метки седьмой вкладки и узнать идентификатор addButton во вкладке c.

Bests

1 Ответ

0 голосов
/ 30 апреля 2020

Вы можете использовать

Notebook.tab(tab_id, option=None, **kw)

tab_id может быть индексом целевой вкладки в виде целого числа.

Эта функция имеет несколько приложений:

Если option определен, он возвращает значение этой опции.

Если вы хотите изменить опцию, например. текст, просто напишите Notebook.tab(tab_id, text = "newtext")

Если вы оставите его на Notebook.tab(tab_id), он возвращает словарь всех значений параметров.

Дайте мне знать, если это поможет:)

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