Menü für ESP8266 mit I2c Oled 128x64

Hallo,

ich habe das i2c-oled-Display mit 128x64px in gelb(16 Zeilen)/türkis (restliche Zeilen) am NodeMCU v0.9.
Sollte mit mit Anpassung der #define Pin... auch recht schnell an andere ESP8266 mit genug Beinchen passen.

s. Anhang mal mein abgespecktes Beispielmenü mit dem "arduino-menusystem" und der OLED_library "ESP8266 Oled Driver for SSD1306 display".

Funktioniert elementar auch soweit mit mehreren Ebenen.
Was ich jetzt gerne noch einbauen will ist

  • im menu-items checkbox am zeilenanfang damit man mehrere in der Liste auswählen kann.
  • im menu-menu ">" automatische setzen der Indikators dass es noch eine Ebene tiefer geht
    Wie frage ich in der loop() ab ob Item oder menu-Eintrag?
  • im menü-Titel "<" Symbol für Back; Titel auch anwählbar mit Taste-Up; Callbackfunktion um z.B die Checkboxauswahl zu verarbeiten.
  • Up/Down-Scroll-Leiste wenn mehr Einträge als Displayplatz da ist

Für die Checkboxfunktionalität hab ich eine neue Klasse "MenuItemCheck" abgeleitet.
Aktuell wäre schön wenn mir jemand erklären könnte wie ich an die Memberfunktionen meiner vererbten "MenuItemCheck"-klasse komme.
Die sollen z.b im der loop aufgerufen werden. ?.... set_Check();
Vielleicht hat ja wer Zeit sich das Bsp. mal anzusehen und mir zu sagen was da noch nicht passt.

cu xbox42

MenuTest1.zip (68.1 KB)

Hats sich erledigt?

Für alle anderen die sich hier verirren, >>HIER<< gibts das beste Menü :wink:
Für den ESP8266 erst ab Version 2.3.0

Ich habe mein OLED am ESP nur als Anzeige geschalten.

Menu & Einstellungen mache ich per WLAN direkt an den ESP von meinem Smartphone per ESP-erzeugter Website.

skorpi08:
Hats sich erledigt?

... na ja, die Verständingsfrage wie ich zb. die MenuItemCheck.set_Check()-Klassenmethode aufrufe in der loop ist damit ja nicht geklärt.
Würde mich schon interessieren!? evtl Zugriffsfunktion in der Menu-Klasse, aber wie?

skorpi08:
Für alle anderen die sich hier verirren, >>HIER<< gibts das beste Menü :wink:
Für den ESP8266 erst ab Version 2.3.0

ja sehr schöne Bibliothek, werde wohl auch zu dieser Lib wechseln wenn ich mein I2C-OLED damit zum leuchten bekomme :wink:

@stoni99: sorry, die Aussage hilft mir überhaupt nicht weiter. Mein ESP-Gerät wird der WLAN-Sender für die Gegenstelle(RaspberryPi). Die Einstellung im Menü am Sender ist eine der Grundfunktion.