скрыть рамку при нажатии кнопки tkinter python - PullRequest
0 голосов
/ 11 марта 2019

моя стрелка похожа на указатель.Вы можете удалить его, если добавите в свой код.Он не нужен и испортит ваш код, если вы его не удалите

Я использую Python 2.7.1 и Tkinter.

У меня есть код здесь:

# | this is where the show frame part is. |
# |---------------------------------------|
                   |
                   |__
                     |
def click_start():   |
        |____________|
        V
   f2.pack(after=f1, anchor=W, padx=5, pady=10)

f1 = Frame(root, width=10, height=20, bd=0, bg="#dcd9d3", pady=4, 
relief=FLAT).pack(side=TOP, anchor=W)

f2 = Frame(root, width=10, height=20, bd=0, bg="black", pady=4)

file_button = ttk.Button(f1, text="File", padding=3.5, width=3.5, 
command=click_start).pack(side=LEFT)

Теперь я не знаю, как скрыть фрейм с именем f2.Я хочу, чтобы, когда я нажимал кнопку файла, она показывала фрейм с именем f2 (я сделал эту часть.)

Теперь мне нужно скрыть его, если я снова нажму кнопку файла.

Тогда мне нужно зациклить эту функцию, чтобы я мог делать это бесконечно.

1 Ответ

0 голосов
/ 12 марта 2019

Поскольку вы использовали pack() для фреймов, вы можете использовать pack_forget(), чтобы удалить фрейм из текущего менеджера пакетов. Если вы хотите переключить видимость фрейма, вы можете использовать winfo_manager(), чтобы проверить, управляется ли фрейм любым менеджером макета.

Просто измените click_start(), как показано ниже:

def click_start():
    f2.pack_forget() if f2.winfo_manager() else f2.pack(after=f1, anchor=W, padx=5, pady=10)
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...