...retrieve the non-transparent label with XPMan ?

Author: Laurent Taupin
Homepage: http://www.wptechnology.com

Category: Forms

{
Did you ever try to put the XPMan on a form which uses the color
property of a TLabel ?
Have you noticed that the background color disappear with XPMan ?

It's because XPMan sets the Transparent properties to TRUE.
And because this is done before the OnCreate event, we cannot
retrieve which one was having the Transparent value to FALSE.

The tip I'll describe here is that simple :
if you want to keep the background color property of some labels
(but not all) while using XPMan, put the value "1" to the TAG
property of the label which may not be transparent.

Then, put this code inside the create event of your form :
}

procedure TForm1.FormCreate(Sender: TObject);
var
  
Cpt: Integer;
begin
  for 
Cpt := 0 to Self.ComponentCount - 1 do
    if 
(Self.Components[Cpt] is TLabel) then
      with 
(Self.Components[Cpt] as TLabel) do
        
Transparent := not (Tag = 1);
end;

 

printed from
www.swissdelphicenter.ch
developers knowledge base