M5Dial Touch: Unterschied zwischen den Versionen

Aus Micropython Referenz
Zur Navigation springen Zur Suche springen
Keine Bearbeitungszusammenfassung
Zeile 14: Zeile 14:


== Ideen für eine Touch-Service-Routine==
== Ideen für eine Touch-Service-Routine==
 
Ich möchte eine Funktion schreiben, die aktiverte Touch-Elemente findet.
<br>
Sie soll eine ID des aktivierten Elementes und die Dauer der Berührung zurückgeben oder eine Funktion ausführen und ggf. deren Rückgabe zurückgeben.
=== Datenstruktur für jedes Touch-Element===
=== Datenstruktur für jedes Touch-Element===
<pre>
<pre>

Version vom 27. April 2024, 16:44 Uhr

Die Verwendung des Touchscreens hält noch einige Hürden bereit.

Das Grundprinzip ist mit M5.Touch.getCount() abzufragen, ob der Touchscreen berührt wird. Nicht berührt wird 0, bei Berührung 1 zurückgegeben.

Das funktioniert aber nicht als Argument für if und while!



So funktioniert es:

So nicht:


Ideen für eine Touch-Service-Routine

Ich möchte eine Funktion schreiben, die aktiverte Touch-Elemente findet.
Sie soll eine ID des aktivierten Elementes und die Dauer der Berührung zurückgeben oder eine Funktion ausführen und ggf. deren Rückgabe zurückgeben.

Datenstruktur für jedes Touch-Element

# so:

touch_data = {'x1':0, 'y1':0, 
              'x2':100, 'y2':50, 
              'id':42, 
              'func':None}

# oder so:

touch_data_1 = {'startpoint':(0, 0), 
                'endpoint':(100, 50), 
                'id':42, 
                'func':None}
x1, y1, startpoint
die Koordinaten oben links des Touch-Elementes
x2, y2, endpoint
die Koordinaten unten rechts des Touch-Elementes
id
individuelle Kennung des Touch-Elementes
func
Name einer Funktion die ausgeführt werden soll, wenn das Touch-Element aktiviert wird.