Moin,
ich habe mir eine kleine Musiksuchfunktion gebastelt. Der Suchstring wird logischerweise über ein Entry eingegeben. Bisher starte ich die Suche über Tastendruck auf Return. Ich möchte aber lieber, dass eine neue Suche gestartet wird, sobald ein Buchstabe eingegeben bzw. gelöscht wird (wer die Suchfunktion von Winamp kennt, weiß, was ich meine).
Mein Ansatz ist, eine Funktion zu schreiben, die das Entry-Feld jede Sekunde überprüft und ggf. die Suche startet.
Fragen:
1. Ist das möglich? Wenn ja, wie?
2. Gibt es vielleicht sogar eine Funktion, die sich für die Lösung des Problems noch besser eignet?
Entry alle x Sekunden auslesen
-
- User
- Beiträge: 128
- Registriert: Freitag 22. Oktober 2004, 09:22
- Wohnort: Salzgitter
- Kontaktdaten:
Moinsen...
Du könntest mit Events arbeiten:
Wenn ich in cb() ein suchEntry.get() ausgeführt habe, fehlte mir das letzte Zeichen, deshalb das Zusammensetzen des Strings, in event.char ist das letzte getippte Zeichen enthalten.
Siehe hier.
Du könntest mit Events arbeiten:
Code: Alles auswählen
def cb(event):
if(event.char == ""):
suchstring = suchstring[:-1]
else:
suchstring = suchstring + event.char
suchEntry.bind("<Key>", cb)
suchEntry.pack()
Siehe hier.