Ich versuche, das Widget Entry
zu löschen, nachdem der Benutzer eine Taste mit Tkinter gedrückt hat.Wie wird das Eingabe-Widget gelöscht, nachdem eine Schaltfläche in Tkinter gedrückt wurde?
Ich versuchte mit ent.delete(0, END)
, aber ich habe eine Fehlermeldung, dass Zeichenfolgen nicht das Attribut löschen haben.
Hier ist mein Code, wo ich Fehler auf real.delete(0, END)
bekommen:
secret = randrange(1,100)
print(secret)
def res(real, secret):
if secret==eval(real):
showinfo(message='that is right!')
real.delete(0, END)
def guess():
ge = Tk()
ge.title('guessing game')
Label(ge, text="what is your guess:").pack(side=TOP)
ent = Entry(ge)
ent.pack(side=TOP)
btn=Button(ge, text="Enter", command=lambda: res(ent.get(),secret))
btn.pack(side=LEFT)
ge.mainloop()
Sie können das Argument END (oder "end") angeben, anstatt die Länge der Daten zu berechnen. Da du sagst, dass es nicht funktioniert hat, aber nicht "nicht funktioniert" definiert hat (zB: hast du einen Fehler erhalten, oder ist es im Stillen fehlgeschlagen?), Meine Vermutung ist, dass du ein unqualifiziertes "END" benutzt hast. Versuchen Sie stattdessen "Tkinter.END". Wenn ich das im obigen Code verwende, funktioniert es gut. –
@Bryan: Ah, ich habe nur END, nicht Tkinter.END (das Tutorial verwendete 'from ... import' anstatt nur zu importieren). Vielen Dank! Das Update ist im Code enthalten. – GreenMatt
Ich möchte mit der Schaltfläche 2 Aktionen gleichzeitig ausführen. der erste ist eine zufällige Aktion durchzuführen und der zweite ist, den Eintrag zu löschen – Dan