image for that Ich habe paar Zeilen Code hier schließt Meldungsfeld Pflicht, das System, das funktioniert gut anmelden, aber ich kann auf dem Toplevel
mehrmals klicken, wenn ich das falsche Kennwort eingeben, das messagebox
.Wie ohne Schließen kann ich es so machen, dass es geschlossen werden muss messagebox
bevor ich es erneut versuchen kann.Wie für Toplevel Fenster
from tkinter import *
from tkinter import messagebox
def top():
if entry1.get() == "333":
log.destroy()
root.deiconify()
else:
messagebox.showerror("error", "try again")
root = Tk()
root.geometry("300x300")
log = Toplevel(root)
log.geometry("200x200")
label1 = Label(log, text="password")
entry1 = Entry(log)
button1 = Button(log, text="login", command=top)
label1.pack()
entry1.pack()
button1.pack(side="bottom")
lab = Label(root, text="welcome bro").pack()
root.withdraw()
root.mainloop()
Mögliches Duplikat [wie ein modalen Dialog in tkinter erstellen?] (https://stackoverflow.com/questions/16803686/how-to-erstellen-a-modal-dialog-in-tkinter) – SiHa
Ich habe versucht, grab_set() und wait_window() hat es nicht funktioniert. –
'grab_set()' sollte funktionieren, wenn Sie ein eigenes Meldungsfeld mit 'Toplevel()' erstellen - siehe [Dialog Windows] (http://effbot.org/tkinterbook/tkinter-dialog-windows.htm) – furas