![]() |
Wieso werden Labels nicht angezeigt wenn Panel im Frame ist?
Wenn ich Labels im Framefenster habe und ein Panel dazulege, werden im Framefenster die Labels nicht angezeigt.
Aufgefallen ist mir das in D7. Ist das Problem bekannt? Kann man da was machen? |
Re: Wieso werden Labels nicht angezeigt wenn Panel im Frame
Ist der Panel Parent der Labels?
|
Re: Wieso werden Labels nicht angezeigt wenn Panel im Frame
Vielleicht kannst Du eine kleine Demo hier einstellen?
|
Re: Wieso werden Labels nicht angezeigt wenn Panel im Frame
Zitat:
Die VCL umgeht das Problem ab Delphi 2006. |
Re: Wieso werden Labels nicht angezeigt wenn Panel im Frame
Liste der Anhänge anzeigen (Anzahl: 1)
Nein, hab XP, aber bei der Erstellung der Demo ist mir etwas aufgefallen. Das Problem tritt nur auf wenn man die XPManifest Komponente einfügt.
Anbei eine kleine Demo. Wenn man sie startet, sollten keine Labels sichtbar sein. Nachdem man das Formular vergrößert oder verkleinert, werden sie wieder sichtbar. |
Re: Wieso werden Labels nicht angezeigt wenn Panel im Frame
Es müsste helfen, statt TLabel TStaticText zu verwenden.
|
Re: Wieso werden Labels nicht angezeigt wenn Panel im Frame
Das Problem kenne ich. Bei mir hat der Trick mit TStaticText nur teilweise geholfen. Ich hatte auch noch weiterhin diese Probleme.
Die Lösung für mich war: Frame raus, Form rein! Ich habe seitdem einen Hass gegen Frames und verwende sie daher gar nicht mehr. Ich nehme lieber ein Formular setze den Boarderstyle auf none und gebe als Parent ein Panel an. Damit waren alle Probleme gelöst :-) Gruß Reli |
Re: Wieso werden Labels nicht angezeigt wenn Panel im Frame
Das hier sollte abhelfen. Einfach alle Frames von TFrameBase ableiten und fertig
Delphi-Quellcode:
Ab Delphi 2006 ist das nicht mehr notwendig.
type
TFrameBase = class(TFrame) protected procedure PaintWindow(DC: HDC); override; end; procedure TFrameBase.PaintWindow(DC: HDC); begin // nichts machen end; |
Re: Wieso werden Labels nicht angezeigt wenn Panel im Frame
Jetzt wäre aber noch sehr interessant, warum dieser Kniff hilft?
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 09:28 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz