Seite 1 von 1

Re: Tastatureingaben anfragen

Verfasst: Mittwoch 25. April 2018, 12:00
von wuf
Hi markjohannes

Ich nehme an die vergangenen Antworten haben noch nicht ganz zum Ziel geführt? Hier etwas für Tkinter:

Code: Alles auswählen

#!/usr/bin/env python
# -*- coding: utf-8 -*-

try:
    #~~ For Python 2.x
    import Tkinter as tk
except ImportError:
    #~~ For Python 3.x
    import tkinter as tk

def taste_gedrueckt(event):
    taste_char = event.char
    taste_code = event.keycode
    taste_symbol = event.keysym
    taste_num = event.keysym_num
    print("\nFolgende Taste wurde gedrückt:"\
        + "\nChar:{}\nCode:{}\nSymbol:{}\nNummer:{}".format(
        taste_char, taste_code, taste_symbol, taste_num))
    
    app_win.title("Tasten Symbol: {}".format(taste_symbol))
    
app_win = tk.Tk()
app_win.title("Bitte Taste drücken")
app_win.geometry("300x100")
app_win.bind('<KeyPress>', taste_gedrueckt)
app_win.mainloop()
Gruss wuf :wink:

Re: Tastatureingaben anfragen

Verfasst: Mittwoch 25. April 2018, 12:41
von markjohannes
Wow!
Das hat perfekt funktioniert. Genau so etwas habe ich gesucht, auch wenn ich mich durch die Dokumentation gearbeitet habe; aber diese habe ich nicht so gut verstanden:(
PS: Kennst du eine Funktion mit der man einen Button klicken kann? Ich kenne invoke() aber die ist nach meiner subjektiven Meinung ziemlich langsam.

Mit freundlichen Grüßen
Johannes Schaffer

Re: Tastatureingaben anfragen

Verfasst: Mittwoch 25. April 2018, 20:17
von wuf
Hi markjohannes

Hier noch eine Erweiterung des obigen Skript mit einem Button und dessen Funktion .invoke():

Code: Alles auswählen

#!/usr/bin/env python
# -*- coding: utf-8 -*-

try:
    #~~ For Python 2.x
    import Tkinter as tk
except ImportError:
    #~~ For Python 3.x
    import tkinter as tk

def button_gedrueckt():
    # Diese Funktion wird durch einen Mausklick auf den 'Button-A', aber auch
    # durch drücken der Tastaturtaste 'A' aufgerufen.
    # Die Buttonfunktion .invoke() wird benützt um die 'command-Funktion des
    # Buttons aufzurufen bewirkt aber keine animierte Bewegung des Buttons!
    print("Button-A wurde gedruekt")
    
def tastatur_taste_gedrueckt(event):
    taste_char = event.char
    taste_code = event.keycode
    taste_symbol = event.keysym
    taste_num = event.keysym_num
    print("\nFolgende Taste wurde gedrückt:"\
        + "\nChar:{}\nCode:{}\nSymbol:{}\nNummer:{}".format(
        taste_char, taste_code, taste_symbol, taste_num))
    
    app_win.title("Tasten Symbol: {}".format(taste_symbol))
    
    if taste_char == "A":
        print('Hi')
        app_win.button_a.invoke()
        
app_win = tk.Tk()
app_win.title("Bitte Taste drücken")
app_win.geometry("300x100")
app_win.bind('<KeyPress>', tastatur_taste_gedrueckt)
app_win.button_a = tk.Button(app_win, text='Button-A', command=button_gedrueckt)
app_win.button_a.pack(expand=True)

app_win.mainloop()
Gruss wuf :wink:

Re: Tastatureingaben anfragen

Verfasst: Donnerstag 26. April 2018, 11:07
von Kebap
__deets__ hat geschrieben:um das Englisch kommst du nicht herum. Das ist im programmieren überall. Mit Google translate wird das schon gehen.
Mit DeepL geht es besser :mrgreen: viewtopic.php?t=41258