防止窗口最小化或关闭

时间:2019-07-31 09:42:28

标签: python user-interface tkinter

我想创建一些屏幕,该屏幕在用户每次登录计算机时显示。他将需要输入自己的凭据和登录原因,然后才能关闭窗口。我当时正在考虑使用tkinker,但是我可以找到有关如何将其锁定为关闭或最小化的信息。

编辑:请注意,我并不是在问如何隐藏按钮,我想通了。我想防止最小化,例如:单击其他窗口。

1 个答案:

答案 0 :(得分:1)

您绝对可以使用tkinter来做到这一点:

import tkinter as tk

LOGIN = 'admin'
PWD = '12345'


def prevent_exit():
    pass


def login():
    if login_entry.get() == LOGIN and pwd_entry.get() == PWD and reason_entry.get():
        window.quit()


window = tk.Tk()
window.attributes('-fullscreen', True)
window.attributes('-topmost', True)
window.protocol('WM_DELETE_WINDOW', prevent_exit)

login_label = tk.Label(window, text='Login')
login_label.grid(column=0, row=0)

login_entry = tk.Entry(window)
login_entry.grid(column=1, row=0)

pwd_label = tk.Label(window, text='Password')
pwd_label.grid(column=0, row=1)

pwd_entry = tk.Entry(window, show='*')
pwd_entry.grid(column=1, row=1)

reason_label = tk.Label(window, text='Reason')
reason_label.grid(column=0, row=2)

reason_entry = tk.Entry(window)
reason_entry.grid(column=1, row=2)

send_emails_button = tk.Button(window, text='Login', command=login)
send_emails_button.grid(column=0, row=3, columnspan=2)

tk.mainloop()

无法关闭或最小化此全屏窗口,它始终位于顶部:

enter image description here

相关问题