Viele Komponenten in einer Form

Für Fragen von Einsteigern und Programmieranfängern...
Antworten
pjensen
Beiträge: 77
Registriert: Fr 27. Jul 2007, 08:43
OS, Lazarus, FPC: Winux (L 0.9.xy FPC 2.2.z)
CPU-Target: xxBit
Wohnort: Nahe Flensburg

Viele Komponenten in einer Form

Beitrag von pjensen »

Hallo,

in einer Form ist am oberen Rand ein Menü (TMainMenu) mit z.B. 5 Einträgen.

Für jeden der o.g. Menüpunkte soll jeweils der gesamte Inhalt der Form (DBGrid, Buttons, etc. ) verschieden sein.
Der gesamte Bildaufbau soll also je nach Menüpunkt anders sein.

Jetzt nehme ich z.B. eine GroupBox1 für Menüpunkt1 und stelle da diverse Komponenten rein.
GroupBox1 nimmt den gesamten Bereich der Form1 ein, außer den Bereich des Menüs.
Bei Klick auf Menüpunkt1 wird GroupBox1.Visible:=True; alle anderen sind visible:=false.

Wenn ich jetzt eine 2.te GroupBox2 erstelle, die ebenfalls fast den gesamten Bereich der Form annimmt,
überdeckt diese beim Programmieren in der IDE die Groupbox1.

Wenn ich jetzt im Objectinspektor auf Groupbox1 klicke, sehe ich in meiner Form trotzdem die Groupbox2.

Ich kann also in Groupbox1 nichts mehr verändern, wie z.B. einen Button hinzufügen oder einen vorhandenen verschieben.




Wie macht man das, dass man bei mehreren Groupboxen in der IDE noch auf alle GroupBoxen zugreifen kann?

MfG, Peter

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

Re: Viele Komponenten in einer Form

Beitrag von theo »

TGroupbox ist nicht unbedingt zu diesem Zweck da.
Wie wär's mit TPageControl?

pjensen
Beiträge: 77
Registriert: Fr 27. Jul 2007, 08:43
OS, Lazarus, FPC: Winux (L 0.9.xy FPC 2.2.z)
CPU-Target: xxBit
Wohnort: Nahe Flensburg

Re: Viele Komponenten in einer Form

Beitrag von pjensen »

Das geht leider nicht:
in jeder GroupBox (oder Panel oder was auch immer) ist jeweils 1 PageControl, ein DBGrid etc.

Es muss doch möglich sein, beim Programmieren auf übereinanderliegende GroupBoxen oder Panel
oder was auch immer zu zu greifen.

Ich kenne das jedenfalls von vielen Programmen, dass bei verschiedenen Menüpunkten jeweils
der gesamte Bildschirmaufbau sich verändert. z.B. StarMoney

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

Re: Viele Komponenten in einer Form

Beitrag von theo »

pjensen hat geschrieben:Das geht leider nicht:
in jeder GroupBox (oder Panel oder was auch immer) ist jeweils 1 PageControl, ein DBGrid etc.

Na und?

Scotty
Beiträge: 768
Registriert: Mo 4. Mai 2009, 13:24
OS, Lazarus, FPC: Arch Linux, Lazarus 1.3 r44426M FPC 2.6.4
CPU-Target: x86_64-linux-qt/gtk2
Kontaktdaten:

Re: Viele Komponenten in einer Form

Beitrag von Scotty »

Ich kenne das jedenfalls von vielen Programmen, dass bei verschiedenen Menüpunkten jeweils der gesamte Bildschirmaufbau sich verändert

Ob das gute Programme sind... :mrgreen:
Wenn das Objekt im Inspektor an der falschen Stelle landet, dann kannst du es vielleicht dort mit der Maus an die richtige Stelle ziehen. Die IDE hat noch einige Bugs. Vielleicht hilft auch ein Update von Lazarus.

pluto
Lazarusforum e. V.
Beiträge: 7178
Registriert: So 19. Nov 2006, 12:06
OS, Lazarus, FPC: Linux Mint 19.3
CPU-Target: AMD
Wohnort: Oldenburg(Oldenburg)

Re: Viele Komponenten in einer Form

Beitrag von pluto »

Ich würde hier ein NoteBook Vorschlagen. Das ist eine Komponente, die genau das kann was du möchtest:
Dort könnte für jede Gruppe eine Seite angelegt werden, sobald alles Fertig ist, könnte die "Page" unsichtbar gemacht werden. Schau sie dir mal an.
MFG
Michael Springwald

pjensen
Beiträge: 77
Registriert: Fr 27. Jul 2007, 08:43
OS, Lazarus, FPC: Winux (L 0.9.xy FPC 2.2.z)
CPU-Target: xxBit
Wohnort: Nahe Flensburg

Re: Viele Komponenten in einer Form

Beitrag von pjensen »

Jetzt habe ich gerade angefangen, das doch mit PageControl zu machen.

Ich verstecke alle tabs und mache dann nur die sichtbar, die ich haben will, entsprechend Menüpunkt.
for i:=0 to PageControl1.PageCount-1 do
begin
PageControl1.Page[i].TabVisible:=False;
end;

Das geht doch ganz gut, hätte ich nicht gedacht.


Kurz mal mit Notebook rumgespielt:

Wo ist der Unterschied zwischen PageControl und Notebook?

pluto
Lazarusforum e. V.
Beiträge: 7178
Registriert: So 19. Nov 2006, 12:06
OS, Lazarus, FPC: Linux Mint 19.3
CPU-Target: AMD
Wohnort: Oldenburg(Oldenburg)

Re: Viele Komponenten in einer Form

Beitrag von pluto »

Wo ist der Unterschied zwischen PageControl und Notebook?

Unter Delphi war der unterschied: Das das PageControl Register Karten angezeigt hat, also oben so eine Leiste hatte, das NoteBook je doch nicht. In Lazarus dürfte das auch der Unterschied sein, dass hier die Leiste, wo die Seiten ausgewählt werden können, abgeschaltet werden können.
MFG
Michael Springwald

pjensen
Beiträge: 77
Registriert: Fr 27. Jul 2007, 08:43
OS, Lazarus, FPC: Winux (L 0.9.xy FPC 2.2.z)
CPU-Target: xxBit
Wohnort: Nahe Flensburg

Re: Viele Komponenten in einer Form

Beitrag von pjensen »

@ Pluto:
OK, genau das habe ich gesucht :)

Danke!

Antworten