keyboard Modul funktioniert nicht richtig für Tasteneingabe
Verfasst: Mittwoch 6. Oktober 2021, 20:13
Hallo,
ich versuche dem User seine Eingabe in einer CLI Anwendung zu erleichtern.
Er soll mit den Tasten "+" und "-" eine Jahreszahl schrittweise ändern können.
Mein Problem ist, dass das Eingabeverhalten für mich nicht nachvollziehbar ist.
Erst muss der User 2 mal "die Taste +" drücken damit sich etwas ändert. Später funktioniert es aber dann schrittweise richtig und wenn ich dann "-" drücke ist es wieder ok und später dann wieder nicht. Sprich das Eingabeverhalten fühlt sich am Ende nach "Gummi" an bzw stolpert. Warum zählt er nicht einfach +1 rauf und -1 runter. Irgendetwas verschluckt sich da ?!
Kennt von euch jemand dieses Problem und hat einen Tipp oder kann von ähnlichen Erfahrungen berichten ?
Benutze alles in einer Windows Umgebung.
VG gomez_
hier der Code:
ich versuche dem User seine Eingabe in einer CLI Anwendung zu erleichtern.
Er soll mit den Tasten "+" und "-" eine Jahreszahl schrittweise ändern können.
Mein Problem ist, dass das Eingabeverhalten für mich nicht nachvollziehbar ist.
Erst muss der User 2 mal "die Taste +" drücken damit sich etwas ändert. Später funktioniert es aber dann schrittweise richtig und wenn ich dann "-" drücke ist es wieder ok und später dann wieder nicht. Sprich das Eingabeverhalten fühlt sich am Ende nach "Gummi" an bzw stolpert. Warum zählt er nicht einfach +1 rauf und -1 runter. Irgendetwas verschluckt sich da ?!
Kennt von euch jemand dieses Problem und hat einen Tipp oder kann von ähnlichen Erfahrungen berichten ?
Benutze alles in einer Windows Umgebung.
VG gomez_
hier der Code:
Code: Alles auswählen
def saison_change(self):
IO.print_seeding_saison()
print(self.saison, " (+)(-) - übernehmen (x)")
keyboard.read_key()
while keyboard.read_key() != "x":
if keyboard.read_key() == "+":
time.sleep(0.15)
self.saison = self.saison + 1
self.print_title_and_user()
IO.print_seeding_saison()
print(self.saison, " (+)(-) - übernehmen (x)")
elif keyboard.read_key() == "-":
self.saison = self.saison - 1
self.print_title_and_user()
IO.print_seeding_saison()
print(self.saison, " (+)(-) - übernehmen (x)")