Hallo zusammen, bin grade am Nachdenken, wie man am einfachsten eine relativ groß angelegte Menüstruktur in C programmiert. Groß angelegt heisst, dass mehrfache Verzweigungen (Untermenüs) möglich sein sollen. Desweiteren sollen die Menüpunkte hoch und runter gescrollt werden können. Also zum Beispiel ein Menü mit 8 Punkten auf einem Display mit 4 Zeilen. Und das ganze soll natürlich so gut wie möglich programmiert sein. Hab mir auchs chon meine Gedanken dazu gemacht. Aber vielleicht hat ja jemand die perfekte Idee wie so was am besten ghet. Gruss Günter
ich hab mal ein kleines projekt gemacht mit ein paar menüpunkten. habe einfach das ganze über ein mehrdimensionales array gereglt. über den index des arrays konnte ich dann alles steuern.
Am praktischten wäre es wohl jeden Menüpunkt als struct anzulegen, mit einem Zeiger auf einen String im Flash, einem Zeiger auf das übergeordnete Menü und z.B. einem Zeiger auf die bei Aktivierung aufzurufende Funktion.
Ich hab mir dafür ein Struct angelegt, dann ein Array von diesen Struct Elementen. Jedes Element (jeder Menüeintrag) beinhaltet die Nummer des nächsten Menüeintrages, die Nummer des vorherigen Menüeintrages. So kann man schonmal schön das Menü darstellen. Deweiteren gibt es einen Eintrag mit der Nummer des zugehörigen Untermenüs (wenn kein Menüeintrag vorhanden, dann 0), und schliesslich die Nummer des übergeordneten Menüs. Das ganze sieht ungefähr so aus: typedef struct{ unsigned char number; const char *name; unsigned char next; unsigned char previous; unsigned char sub; unsigned char up; }menustruktur; Und initalisiert wie folgt: menustruktur menu[] = { {0x01, "Variablen ", 0x02, 0x04, 0x05, 0x00}, {0x02, "Programme ", 0x03, 0x01, 0x07, 0x00}, {0x03, "Menue 3 ", 0x04, 0x02, 0x00, 0x00}, {0x04, "Menue 4 ", 0x01, 0x03, 0x00, 0x00}, {0x05, "Lesen ", 0x06, 0x06, 0x00, 0x01}, {0x06, "Schreiben ", 0x05, 0x05, 0x00, 0x01}, {0x07, "Aktivieren ", 0x08, 0x08, 0x00, 0x02}, {0x08, "Aktivieren ", 0x07, 0x07, 0x00, 0x02}, }; Hoffe das hilft, Gruss Andre
Erst mal vielen Dank für die Hilfe... Die Struct Lösung hatte ich auch angedacht. Wird wohl darauf hinaus laufen. Danke für eure Gedankne dazu. Gruss Günter
Hi, Hat schon jemand so ein Menü prog fertig? Ich versuche mich auch gerade an der programmierung eines Menü's komm aber irgendwie nicht weiter? Hat jemand ein fertiges prog? MFG Jörn
Wie wäre es mit einem Baum ( Trie das teil heißt so ;-) ) Dann machst du das ganze doppelt verketett damit du auch wieder zurück kommst ;-) Sprich jedes Menü ist eine Ebene nach rechts sind die Menüpunkte und nach unten die Folgemenüs. Ist zwar viel mit Pointern dafür sehr flexiebel ;-) cu chege
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.