На главном окне у меня будут: кнопка, поля ввода и несколько label. Как сделать так, чтобы после нажатия кнопки она исчезала(скрывалась), а затем появлялись остальные объекты.
То есть как авторизация: вводим логин, пароль, нажимаем "войти", всё скрывается и появляются другие компоненты, то есть будто вход выполнен.
Искал в интернете, но нашел только скрыть кнопку по нажатию или скрыть/показать label по нажатию на кнопку.
Можно ли, когда нажму на кнопку, сначала выполниться действие(показ всех остальных элементов), а потом все компоненты авторизации исчезнут?(или наоборот, сначала все исчезает, а потом появляются компоненты). То есть можно ли как-то скрыть все компоненты по 1 нажатию кнопки и как это реализовать или есть какой-то другой способ?
Функция hide_me скрывает кнопку через bind(), если кнопка не привязана к координатам, а так ничего не происходит.
Попробовал через lambda сделать, чтобы выполнить 2 функции сразу, но появляется ошибка.
btn=Button(text="Авторизация", command=lambda:(AUTO(),hide_me()))
TypeError: hide_me() missing 1 required positional argument: 'event'
from tkinter import *
def hide_me(event):
event.widget.pack_forget()
root = Tk()
root.title("Авторизация")
root.geometry("500x250")
root.resizable(False, False)
l = "admin"
p = "password"
LOGIN = "Введите логин:"
LOGIN = Label(text=LOGIN, justify=LEFT)
LOGIN.place(x=0, y=0)
lineLOGIN = Entry()
lineLOGIN.pack()
lineLOGIN.place(x=80, y=30, anchor="c")
PASS = "Введите пароль:"
PASS = Label(text=PASS, justify=LEFT)
PASS.place(x=0, y=60)
linePASS = Entry()
linePASS.pack()
linePASS.place(x=80, y=90, anchor="c")
def AUTO():
if lineLOGIN.get() == l and linePASS.get() == p:
linePA = Entry()
linePA.pack()
linePA.place(x=200, y=70, anchor="c")
else:
print("Неверный логин/пароль")
btn=Button(text="Авторизация", command=lambda:(AUTO(),hide_me()))
#btn.bind('<Button-1>', hide_me)
btn.pack()
btn.place(x=60, y=120, anchor="c")
root.mainloop()