Quando o Panel assuma cor do form no Delphi 7

Quando utilizando o componente “panel” e utilizamos cores para diferenciar do form para operações isolados no software, ainda mais quando utilizamos o XPManifest é comum que, apesar da cor aparecer no modo de produção, quando rodamos o sistema o panel assume a cor do Form, acabando com a diferenciação, no Windows 7 tem o agravante que ainda pode pegar a transparência dependendo da configuração adotada pelo usuário.

Para solucionar isso é fácil. Selecione o panel desejado e vá nas propriedades do “Object Inspector” e desligue o ParentBackGround e Parente color, passando eles para “false”, veja:

Se você precisar utilizar isso em vários panels no seu sistema, pode ainda fazer via programação, veja a dica do site Ramos da Informática é muito eficiente para esse caso. Basta colocar no evento OnForm ou OnCreate.

procedure TForm1.FormShow(Sender: TObject);
var
i : Integer;
begin
For i := 0 to ComponentCount - 1 do
begin
If (TControl(Components[i]).ClassName = 'TPanel') then
begin
TPanel(Components[i]).ParentBackGround := False;
TPanel(Components[i]).ParentColor := False;
end;
end;
end;

Compatilhe esse artigo!

Leave a Reply

Deixe uma resposta

O seu endereço de e-mail não será publicado. Campos obrigatórios são marcados com *

This site uses Akismet to reduce spam. Learn how your comment data is processed.