[Gelöst] Panel wird überdeckt

Für Probleme bezüglich Grafik, Audio, GL, ACS, ...
Antworten
ConcAPPtLab
Beiträge: 89
Registriert: Fr 18. Apr 2014, 18:57

[Gelöst] Panel wird überdeckt

Beitrag von ConcAPPtLab »

Hallo Leute,

ich habe mal wieder ein Problem :)

Ich habe ein Panel1, auf dem ein Image drauf ist. Ich habe das alles so programmiert, dass das Image als eine Art Knopf funktioniert (mit Hover/Press-Effekt, Aktion auslösen, etc).

Die Aktion ist, dass ein anderes Panel, Panel2, welches HINTER Panel1 liegt, 'ausgefahren' wird (die Breite des Panels wird innerhalb eines Timers erhöht). Doch da taucht das Problem auf:

Panel2 überdeckt Panel1! Und das, obwohl ich Panel1 vorher in den Vordergrund gestellt habe. Auch ein Panel1.BringToFront funktioniert nicht. :(

Hat jemand von euch eine Idee, wieso das so ist? Und was ich degegen tun kann?

LG und Danke für eure Antworten,
ConcAPPtLab
Zuletzt geändert von ConcAPPtLab am Fr 2. Jan 2015, 21:36, insgesamt 1-mal geändert.
Definition "Strategische Fehlerkorrektur":
Solange rumprobieren bisses klappt :D

Lion
Beiträge: 186
Registriert: Mo 24. Mär 2014, 09:58

Re: Panel wird überdeckt

Beitrag von Lion »

Du kannst die Panels ein- oder ausblenden, mit Visible.

ConcAPPtLab
Beiträge: 89
Registriert: Fr 18. Apr 2014, 18:57

Re: Panel wird überdeckt

Beitrag von ConcAPPtLab »

Naja. Panel1 soll immer zu sehen sein. Im Vordergrund. Und Panel2 wird im Grunde schon ein- und ausgeblendet -- nur dass nach dem Einblenden das 'Breitziehen', und vor dem Ausblenden das 'Zusammenquetschen' erfolgt.
Definition "Strategische Fehlerkorrektur":
Solange rumprobieren bisses klappt :D

Mathias
Beiträge: 6193
Registriert: Do 2. Jan 2014, 17:21
OS, Lazarus, FPC: Linux (die neusten Trunk)
CPU-Target: 64Bit
Wohnort: Schweiz

Re: Panel wird überdeckt

Beitrag von Mathias »

Panel2 überdeckt Panel1!

Wen das mit Visible nicht klappt, könnte es noch ein der Breite liegen, wen die 0 ist, ist das Panel auch nicht sichtbar.

(die Breite des Panels wird innerhalb eines Timers erhöht)

Es könnte gut sein, das da sich ein Fehler eingeschlichen hat.


So kannst das übeprürfen_

Code: Alles auswählen

Caption := IntToStr(Panel1.Width);
Mit Lazarus sehe ich grün
Mit Java und C/C++ sehe ich rot

ConcAPPtLab
Beiträge: 89
Registriert: Fr 18. Apr 2014, 18:57

Re: Panel wird überdeckt

Beitrag von ConcAPPtLab »

Danke für die Antworten, keine hat jedoch zur Lösung geführt...obwohl, die von Mathias indirekt xD

Zwar hat mir das mit dem Caption nicht so viel gebracht, aber dadurch habe ich ein Label auf Form1 gesetzt (und nichts weiter damit veranstaltet), und plötzlich war das Panel1 vor Panel2 !!! Ich verstehe es nicht wirklich, aber das ist ja auch egal. Meine Theorie: es muss immer ein Element, welches Form1 als Elternobjekt hat, im Vordergrund sein.

Sollte ich das eben zu wirr erzählt haben, ist das auch egal. Es funkioniert jedenfalls jetzt :) Dankeschön

Kleine Nebenfrage, die jetzt aufgetreten ist: Kann man das Panel durchsichtig gestalten? Gibt es da ne Einstellung?

Grüße
ConcAPPtLab :)
Definition "Strategische Fehlerkorrektur":
Solange rumprobieren bisses klappt :D

Antworten