Organisation der LCD (Menu) Daten

Gast #3148726
Lesenswert?
• ▲
▼
chris schrieb:

> wie macht ihr das mit den Menus für LCDs (HD44780)?
> Menü in einer Struktur speichern und irgendwie durch einen Index
> navigieren?

Menüs sind (übrigens völlig unabhängig vom Anzeige- und Eingabemedium) 
prinzipiell Bäume, also verwaltet man sie sinnvollerweise auch in 
Baumstrukturen. Nur für den Sonderfall, daß das Menü nur eine Ebene hat, 
kann man den Baum zu einer linearen Liste vereinfachen. Wenn man sich 
aber schonmal die Arbeit macht, ein Menüsystem zu programmieren, ist es 
sinnvoll, gleich den allgemeinen Fall zu implementieren.

Wenn man das hinreichend abstrakt tut, kann man dann den Baum mit allen 
seinen Verwaltungsroutinen statt für ein Menüsystem genauso für z.B. die 
Anzeige des Inhalts eines Datenträgers verwenden.

Und klar: die einzelnen Knoten, aus denen so ein Baum besteht, 
realisiert man natürlich als Strukturen, wobei die im abstrakten Fall 
nur aus einem Satz von 6 Zeigern bestehen. Etwa sowas:

ParentNode
PreviousNode
NextNode
FirstSubnode
LastSubnode
Data

Von den Zeigern zeigen fünf auch wieder nur auf einen anderen Knoten 
(oder NULL). Über den sechsten hingegen wird auf die Nutzdaten des 
Knoten verwiesen. Das kann dann auch wieder eine Struktur sein, muß es 
aber nicht.

Im einfachsten Fall, z.B. bei einem einfachen Menü, was lediglich eine 
Beschriftung für jeden Knoten anbietet und nur einfach "angeklickt" 
werden kann, könnte man Data auch einfach nur auf die zur Beschriftung 
verwendete Zeichenkette zeigen lassen. Mehr wird dann ja nicht benötigt.

Antwort schreiben

Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt. Bitte hier nur auf die ursprüngliche Frage antworten, für neue Fragen einen neuen Beitrag erstellen.

Formatierung
  • [c]C-Code[/c]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] – Link zu einem Artikel
  • Verweis auf einen anderen Beitrag: Rechtsklick auf dessen Beitrags-ID (#8078628), „Adresse kopieren“, in den Text einfügen

Mehr zur Formatierung

Längeren Sourcecode als Anhang, nicht in den Text. JPG nur für Fotos und Scans; Zeichnungen und Screenshots als PNG oder GIF. Siehe Bildformate.

Schon registriert? Anmelden

Wird nicht angezeigt. Wir schicken dir einen Link; sobald du damit bestätigst, erscheint dein Beitrag.

Mit dem Abschicken legst du einen kostenlosen Account an und erkennst die Nutzungsbedingungen und die Datenschutzerklärung an.