Menü Statisch vs. Dynamisch

Für sonstige Unterhaltungen, welche nicht direkt mit Lazarus zu tun haben
Antworten
Benutzeravatar
Maik81SE
Beiträge: 308
Registriert: Fr 30. Sep 2011, 14:07
OS, Lazarus, FPC: Debian 12 (L 3.0.0.3 FPC 3.2.2); Windows 10 (L 3.99.0.0 FPC 3.2.0)
CPU-Target: x86-64; arm; avr
Wohnort: Lübeck
Kontaktdaten:

Menü Statisch vs. Dynamisch

Beitrag von Maik81SE »

Moin zusammen,

ich habe mal eine Grundsätzliche Frage an uns alle.
Wie denkt ihr darüber, Menüs (Main/Popup) Dynamisch aufzubauen?
Seht ihr da mehr Nachteile oder seit ihr der Meinung, das sich die Vor und Nachteile gegenseitig aufheben und am ende ein +/- rauskommt?

Ein Vorteil eines Dynamischen Menüs ist der Aspekt, das man nicht so viel MenüItems in der Rückhand halten muß --> Weniger Speicher im Ram benödogt,
Daraus ergibt sich allerdings auch der Nachteil, das man jeden Menüpunkt bei der Programierung angefast werden muß --> mehr schreibaufwand

Das Statische Menü hat für mich den Vorteil, das man es bei Bau so bauen kann, wie man es braucht --> Zeitersparnis
Dies Ergibt für mich allerdings auch wieder den Nachteil, das man Menüaufbauten, welche innerhalb einer Form Spezifisch sind und nicht angezeigt werden sollen, immer deaktiviert werden müßen und liegen unbenutzt im Ram. --> kann man machen, muß man aber nicht.

Ich betrachte dies gerade unter dem Aspekt, das man das MainMenu 1:1 in ein PopupMenu übernehmen kann. ohne nochmal ca 10 bis 30 zusätzliche Menüitems aufzubauen, was ich bisher immer so gehandhabt habe.

Code: Alles auswählen

label.caption:= 'gnublin.no-ip.info'
Debian 12 (L 3.0.0.3 FPC 3.2.2);
windows 10 (L 3.99.0.0 FPC 3.2.0)

Benutzeravatar
af0815
Lazarusforum e. V.
Beiträge: 6200
Registriert: So 7. Jan 2007, 10:20
OS, Lazarus, FPC: FPC fixes Lazarus fixes per fpcupdeluxe (win,linux,raspi)
CPU-Target: 32Bit (64Bit)
Wohnort: Burgenland
Kontaktdaten:

Re: Menü Statisch vs. Dynamisch

Beitrag von af0815 »

Grundlegend sollte die Überlegung vor dem Schreiben der Software klar sein.

Ich bin für eine Mixed Form. Alles was statisch soll es auch bleiben. MRU zB müssen dynamisch sein. Dafür gibt es in Lazarus sogar schon Komponenten. Ansonsten ist es kein Problem Teile dynamisch zu machen.
Blöd kann man ruhig sein, nur zu Helfen muss man sich wissen (oder nachsehen in LazInfos/LazSnippets).

Benutzeravatar
fliegermichl
Lazarusforum e. V.
Beiträge: 1432
Registriert: Do 9. Jun 2011, 09:42
OS, Lazarus, FPC: Lazarus Fixes FPC Stable
CPU-Target: 32/64Bit
Wohnort: Echzell

Re: Menü Statisch vs. Dynamisch

Beitrag von fliegermichl »

Moinsens,

Mainmenus hatte ich bislang meistens statisch (abgesehen von MRU)
Popupmenus fast immer dynamisch weil vom Objekt abhängig.

Meine Objekte haben eine property fPopup. Wenn die = nil ist wird die virtuelle Methode GetPopUp aufgerufen welche das Popupmenu erzeugt und in fPopup speichert.
Da alle meine Klassen von einer Basisklasse abgeleitet sind, kann ich Menüeinträge die für alle gelten in der Basisklasse definieren und alles spezielle dann eben in den von der Basisklasse abgeleiteten.

Benutzeravatar
Maik81SE
Beiträge: 308
Registriert: Fr 30. Sep 2011, 14:07
OS, Lazarus, FPC: Debian 12 (L 3.0.0.3 FPC 3.2.2); Windows 10 (L 3.99.0.0 FPC 3.2.0)
CPU-Target: x86-64; arm; avr
Wohnort: Lübeck
Kontaktdaten:

Re: Menü Statisch vs. Dynamisch

Beitrag von Maik81SE »

MRU hört sich schon mal danach an, womit ich arbeiten könnte.,
Das Beispiel ist sehr überschaubar und lässt sich daher leicht nachvollziehen,
Lediglich die Installation des Package hat mich 3 Stunden gekostet, da es ein Rattenschwaz ohne ende war, der mit installiert werden muste.
Zumindest auf meinem PI4

Ohne diese Information hätte ich unter Garantie versucht dies zu fuß aufzubauen.

Code: Alles auswählen

label.caption:= 'gnublin.no-ip.info'
Debian 12 (L 3.0.0.3 FPC 3.2.2);
windows 10 (L 3.99.0.0 FPC 3.2.0)

Antworten