Grid Layout

Rund um die LCL und andere Komponenten
Antworten
ufkpra2
Beiträge: 32
Registriert: Fr 14. Mai 2010, 14:47
CPU-Target: i386
Wohnort: Ulm

Grid Layout

Beitrag von ufkpra2 »

Hallo.

Ich versuche diverse Elemente innerhalb eines Gitter Layouts anzuordnen. Dazu habe ich im Elternelement die Eigenschaft ChildSizing/Layout auf ccLeftToRightThenTopToBottom gesetzt. Das funktioniert auch soweit wie erwartet.
Einge Dinge scheitern aber: Wie kann ich die Reihenfolge der im Grid angeordneten Elemente manipulieren? Diese sind immer fix in Erstellungsreihenfolge angeordnet. Damit könnte ich ja leben, allerdings gibt es eine Ausnahme: Labels scheinen immer ganz vorne zu stehen, was natürlich ziemlich doof ist. Momentane unschöne Lösung dafür ist, die Labels wiederum in ein extra Panel zu packen.

Hat jemand mehr Erfahrung damit und einen Rat für mich?

Danke schon mal im Vorraus.

Benutzeravatar
theo
Beiträge: 10904
Registriert: Mo 11. Sep 2006, 19:01

Re: Grid Layout

Beitrag von theo »

Ich kann nicht nachvollziehen was du meinst. Bei mir verhalten sich die Labels anständig.
Lazarus 0.9.29 r25504M FPC 2.4.0 i386-linux-gtk 2 (beta)
Vielleicht verstehe ich dich auch falsch.
Dateianhänge
lazchildsizing.png

ufkpra2
Beiträge: 32
Registriert: Fr 14. Mai 2010, 14:47
CPU-Target: i386
Wohnort: Ulm

Re: Grid Layout

Beitrag von ufkpra2 »

Ich glaube, Du verstehst mich schon richtig.

Meine Version ist die Lazarus 0.9.28.2 r22279 FPC 2.2.4 i386-win32-win32/win64.

Die Elemente im Bildschirmfoto wurden in der Reihenfolge Label1, Edit1, Label2, Edit2 hinzugefügt. Allerdings haben sich die Labels wieder nach vorne geschoben.

Kannst Du in Deiner Version eigentlich die Reihenfolge der Elemente per Drag 'n' Drop oder auf andere Weise noch ändern?
laz-grid.JPG

Benutzeravatar
theo
Beiträge: 10904
Registriert: Mo 11. Sep 2006, 19:01

Re: Grid Layout

Beitrag von theo »

Weiss ich nicht, ob es da eine Möglichkeit in der IDE gibt.
Du kannst natürlich immer die *lfm manuell bearbeiten und die Objekte verschieben.
Rechts-Klick auf das Formular und entsprechenden Menupunkt wählen.
Sonst Lazarus upgraden.

shokwave
Beiträge: 475
Registriert: Do 15. Nov 2007, 16:58
OS, Lazarus, FPC: Win11/Ubuntu Budgie (L 3.0 FPC 3.2.2)
CPU-Target: i386, x64
Wohnort: Gera

Re: Grid Layout

Beitrag von shokwave »

Hallo ufkpra2,
kann es sein, dass du die Reihenfolge im Objektinspektor(linke Seite) meinst?
Ich glaube die entsteht zum Teil aus der Anordnung der Komponenten auf der Form und alphabetischer Reihenfolge. Mir ist nicht bekannt, dass man sie direkt beeinflussen kann.
mfg Ingo

Socke
Lazarusforum e. V.
Beiträge: 3178
Registriert: Di 22. Jul 2008, 19:27
OS, Lazarus, FPC: Lazarus: SVN; FPC: svn; Win 10/Linux/Raspbian/openSUSE
CPU-Target: 32bit x86 armhf
Wohnort: Köln
Kontaktdaten:

Re: Grid Layout

Beitrag von Socke »

ChildSizing ist eine schöne Sache, wenn man nur Elemente eines Typs verteilen will. Sobald das Layout etwas komplexer wird (bspw. Edit-Felder mit Labels als Beschriftung) mache ich das manuell mit Ankern. Das lässt sich wunderbar schnell zusammenklicken, selbstgecoded für zur Laufzeit erzeugten Elemente wirds aber etwas lästig.
MfG Socke
Ein Gedicht braucht keinen Reim//Ich pack’ hier trotzdem einen rein

ufkpra2
Beiträge: 32
Registriert: Fr 14. Mai 2010, 14:47
CPU-Target: i386
Wohnort: Ulm

Re: Grid Layout

Beitrag von ufkpra2 »

Socke hat geschrieben:Sobald das Layout etwas komplexer wird, mache ich das manuell mit Ankern. Das lässt sich wunderbar schnell zusammenklicken, selbstgecoded für zur Laufzeit erzeugten Elemente wirds aber etwas lästig.
Zur Laufzeit muss nichts erzeugt werden.
Schnell zusammenklickbar ist die Anker Sache aber imo auch nicht gerade, außer hier wird was übersehen? Wie geht man dabei am geschicktesten vor?

Antworten