Fórum coloco uma cor aparece outra! #222628

26/03/2004

0

quando eu coloco color de um edit para clCream antes de ser compilado aparece uma cor, ai quando eu compilo e executo aparece outra!
que que eu faço?


Linhares

Linhares

Responder

Posts

26/03/2004

Rômulo Barros

O que vc acabou de postar, amigo, eu testei e tambem ocorreu o mesmo problema. alguem sabe o que poderia ser !!!!!!


Responder

Gostei + 0

26/03/2004

Fabio.hc

Tente assim:

procedure TForm1.FormCreate(Sender: TObject);
begin
  Screen.OnActiveControlChange := ColorControl;
end;

procedure TForm1.FormClose(Sender: TObject; var Action: TCloseAction);
begin
  Screen.OnActiveControlChange := nil;
end;

procedure TForm1.ColorControl(Sender: TObject);
var
  Cor: TColor;
  I: integer;
begin
   With Screen.ActiveForm do
      begin
      for I:= 0 to ComponentCount -1 do
         begin
         if Components[I] is TCustomEdit then
            begin
            Cor := clCream; // coloque a cor desejada.
            AtribuiProp(Components[I], ´Color´, IntToStr(Cor));
            end;
         end;
      end;
end;

procedure TForm1.AtribuiProp(Comp: TComponent; const PropName: string; Val: string);
var
  PInfo: PPropInfo;
begin
   PInfo := GetPropInfo(Comp.ClassInfo, PropName);
   if PInfo <> nil then
      begin
      // Trata conforme o tipo
      case PInfo^.Proptype^.Kind of
      tkInteger: SetOrdProp(Comp, PInfo, StrToInt(Val));
      tkChar, tkWChar: SetOrdProp(Comp, PInfo, ord(Val[1]));
      tkEnumeration: SetOrdProp(Comp, PInfo, GetEnumValue(PInfo^.PropType^, Val));
      tkFloat: SetFloatProp(Comp, PInfo, StrToFloat(Val));
      tkString, tkLString, tkWString: SetStrProp(Comp, PInfo, Val);
      tkVariant: SetVariantProp(Comp, PInfo, Val);
      tkInt64: SetInt64Prop(Comp, PInfo, StrToInt64(Val));
      else
      ShowMessage(´Este tipo não é suportado por este programa´);
      end;
      end
   else
      ShowMessage(´Propriedade não achada´);
end;



Responder

Gostei + 0

26/03/2004

Nildo

Tinha o mesmo problema com o clCream e o clBlueSky (ou SkyBlu nao lembro). mas sabem depois de quando comecou a dar esses problemas?

Depois que eu instalei a RxLib.


Responder

Gostei + 0

26/03/2004

Linhares

putz...eu tbm instalei rxlib


Responder

Gostei + 0

26/03/2004

Linhares

q q tu fez para voltar ao normal?? sem ser desinstalar o rxlib.


Responder

Gostei + 0

26/03/2004

Nildo

Uma vez eu tive que formatar meu HD e quando reinstalei o Delphi, nao instalei a RxLib.


Responder

Gostei + 0

26/03/2004

Dedi

Eu tenho instalado a Rxlib e a cor está normal.mas estou usando w98,+ Delphi6..... qual windows e delphi está usando?


Dedi.


Responder

Gostei + 0

26/03/2004

Nildo

Eu: w98 + Delphi6


Responder

Gostei + 0

26/03/2004

Linhares

winXP + delphi6


Responder

Gostei + 0

26/03/2004

Dedi

fiz um teste : em tempo de execução

Edit1.Color:=clCream;

a cor realmente não é a mesma....é mais clara.


Responder

Gostei + 0

26/03/2004

Linhares

entao...eh isso que acontecia comigo


Responder

Gostei + 0

26/03/2004

Dedi

então fiz assim:

Edit1.Color:=$009FC7EF;


e a cor se manteve.

Dedi.


Responder

Gostei + 0

26/03/2004

Dedi

Inclusive eu prefiro usar cores fixas e não do sistema,para evitar problemas entre xp e 98 ou quando usuário modifica a aparencia do windows.


Responder

Gostei + 0

26/03/2004

Rômulo Barros

Nildo Escreveu
Tinha o mesmo problema com o clCream e o clBlueSky (ou SkyBlu nao lembro). mas sabem depois de quando comecou a dar esses problemas? Depois que eu instalei a RxLib.


Utilizo Delphi 7.0 + XP e não tenho a droga da Rxlib instalada, entretanto, o erro ocorre comigo :P


Responder

Gostei + 0

26/03/2004

Beppe

Acredito que seja um problema de paleta, isto é, para cores tipo $AABBGGRR, onde AA <> 0.

Se a cor naum for da paleta do Windows mas tiver AA <> 0, entaum
isso dv funcionar
C and $ffffff;
onde C é uma variável ou uma constante TColor.


Responder

Gostei + 0

Utilizamos cookies para fornecer uma melhor experiência para nossos usuários, consulte nossa política de privacidade.

Aceitar