Autor Beitrag
matze
ontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic starofftopic star
Beiträge: 4613
Erhaltene Danke: 24

XP home, prof
Delphi 2009 Prof,
BeitragVerfasst: Mi 20.10.10 23:04 
Hallo.

Ich habe ein Problem unter Windows Vista / Win 7.

Wenn ich ein Label auf ein Formular platziere und ich das Label in einen Bereich setze, der als "Glass" definiert ist, dann wird das Label nicht angezeigt.
Wenn ich dann noch die Eigenschaft "GlowSize" setze, wird zwar der Glow erzeugt, aber die Schrift im Label ist durchsichtig.

Was mache ich denn da falsch?

Danke!
Matze

_________________
In the beginning was the word.
And the word was content-type: text/plain.
jaenicke
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starofftopic star
Beiträge: 19315
Erhaltene Danke: 1747

W11 x64 (Chrome, Edge)
Delphi 11 Pro, Oxygene, C# (VS 2022), JS/HTML, Java (NB), PHP, Lazarus
BeitragVerfasst: Do 21.10.10 06:01 
Hast du DoubleBuffered des Formulars denn auf True gestellt? Denn das ist für alle Komponenten, die dort liegen, erforderlich.

Da ein TLabel sowas nicht hat, sollte es bereits ausreichen das beim Formular zu setzen, da das Label kein eigenes Fensterhandle hat.
matze Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic starofftopic star
Beiträge: 4613
Erhaltene Danke: 24

XP home, prof
Delphi 2009 Prof,
BeitragVerfasst: Do 21.10.10 10:47 
Tatsache. Das funktioniert.
Ist ja blöd, dass das nicht automatisch gesetzt wird, wenn man Glass verwendet.

Danke dir!

_________________
In the beginning was the word.
And the word was content-type: text/plain.
Luckie
Ehemaliges Mitglied
Erhaltene Danke: 1



BeitragVerfasst: Do 21.10.10 11:56 
TLabel ist kein Windows Steuerelement, sondern wird von der VCL selber gezeichnet und hat auch kein richtiges Windows Handle, da es von TGraphicControl abgeleitet ist. Das könnte der Grund sein, warum Windows das nicht richtig verwalten kann. Probiere es mal mit einem TStaticText. Das ist eine Kapselung des Windows Labels aka Static Controls.
delphi10
ontopic starontopic starontopic starontopic starontopic starhalf ontopic starofftopic starofftopic star
Beiträge: 447
Erhaltene Danke: 2

W2K, XP, Vista64, Win7 64
RAD-Studio 2010
BeitragVerfasst: Do 21.10.10 13:35 
user profile iconLuckie hat folgendes geschrieben Zum zitierten Posting springen:
TLabel ist kein Windows Steuerelement, sondern wird von der VCL selber gezeichnet und hat auch kein richtiges Windows Handle, da es von TGraphicControl abgeleitet ist. Das könnte der Grund sein, warum Windows das nicht richtig verwalten kann. Probiere es mal mit einem TStaticText. Das ist eine Kapselung des Windows Labels aka Static Controls.

So einen ähnlichen Effekt gibt es schon bei W2k und Studio 2006. Zieht man ein Panel über ein TLabel und einem TStaticText, bekommt man das TLabel nicht mehr an die Oberfläche, auch nicht wenn TPanel in den Hintergrund gelegt wird. TStaticText wird aber sehr wohl angezeigt.

_________________
Salus populi suprema lex esto