Entwickler-Ecke

Grafische Benutzeroberflächen (VCL & FireMonkey) - PageControl zeigt falschen Inhalt


Gagamba - Di 22.09.15 15:15
Titel: PageControl zeigt falschen Inhalt
Hallo,
ich benutzt Delphi7:
in einem Form habe ich eine Pagecontrol plaziert, darin etliche TabSheets.
Natürlich sollte zur Laufzeit beim Öffnen des Forms die allererste Seite (TabSheet1 in diesem Fall) aufgemacht und dere Inhalt angezeigt werden.
Wird es aber nicht: zwar wird die erste Seite als ausgewählt angezeigt, aber der Inhalt der vierten wird angezeigt!
Ich hab versucht, im Create des Forms folgende Zuweisungen zu machen:
PageControl1.ActivePage := TabSheet1; oder
PageControl1.ActivePageIndex := 0;
hat aber nichts gebracht.
was tun?
Danke: Siegfried


baumina - Di 22.09.15 15:31

Normal ist dieses Verhalten nicht. Kannst du das in einem kleinen Testprogramm nachstellen und uns hier zur Verfügung stellen?


Gagamba - Di 22.09.15 15:36

Hallo,
nein, normal ist das nicht. Aber in kleinen Testprogrammen funktioniert es einwandfrei!

Ich habe aber grade folgende Lösung gefunden:
wenn ich activepage := tabsheet1;
gesetzt habe, dann hilft ein nachfolgendes:
activepage.BringToFront;

aber erklären kann ich das nicht, in den allermeisten Fällen (ich benutze Pacecontrols in vielen anderen Fällen) funktioniert es wie es soll!

Danke: Siegfried


baumina - Di 22.09.15 15:42

Entweder es ist auf dem Formular eine "seltsame" Komponente drauf oder du rutscht in irgendein Ereignis rein, das dieses Verhalten auslöst.


Nersgatt - Di 22.09.15 15:45

Da liegen bestimmt die Steuerelemente der 4. Seite aus versehen nicht in dem Tabsheet, sondern direkt auf dem Formular und verdecken so das PageControl.


Gagamba - Di 22.09.15 18:01

Hallo,
Deine letzte Anmerkung (dass ein paar elemente evtl. nicht auf dem TanbSheet lägen) hab ich noch gecheckt, das trifft NICHT zu. Ausgerechnet dieses TabSheet4 ist auch mit Abstand das einfachste (kaum Elemente).
Wenns jetzt mit BringToFront funktioniert, solls mir recht sein. Ich habe schon lange aufgegeben, alles 'verstehen' zu wollen..
Siegfried


Delete - Di 22.09.15 19:08

- Nachträglich durch die Entwickler-Ecke gelöscht -


Gagamba - Di 22.09.15 20:57

Hallo,
hab grade nachgeschaut: TabStop steht auf TRUE..
Siegfried