djiga4me
Messages postés15Date d'inscriptiondimanche 27 mai 2007StatutMembreDernière intervention30 mars 2010
-
30 juin 2008 à 19:08
f0xi
Messages postés4205Date d'inscriptionsamedi 16 octobre 2004StatutModérateurDernière intervention12 mars 2022
-
1 juil. 2008 à 01:44
J'ai un TEdit géré par deux Timer, l'un deux le met à jour chaque seconde, l'autre, à la demande de l'utilisateur doit changer la couleur de foind du TEdit et la couleur de la police aussi, mais le l'Interval du deucième Timer est de 3000, ce qui fait que les changement de couleurs ne durent que jusqu'à ce que le premier Timer fait un OnTimer (et son travail n'est pas de change les couleurs juste de mettre à jour le texte contenu).
Que puis-je faire pour garder les couleurs un temps voulu plus d'une seconde ? merci.
procedure TForm3.Timer1Timer(Sender: TObject);
const
TxCs : array[0..2] of TColor = (clBlue, clRed, clGreen);
GdCs : array[0..2] of TColor = (clBlack, clWhite, clGray);
begin
inc(TimerDelta);
{ a faire toute les secondes }
Edit1.Text := format('%d :: %d',[TimerDelta, TimerDelta mod UserDelta]); // Texte qui change
if (TimerDelta mod UserDelta) = 0 then
begin
{ a faire toute les X secondes }
Edit1.Font.Color := TxCs[random(27) mod 3]; // couleur du texte
Edit1.Color := GdCs[random(27) mod 3]; // couleur de fond
end;
end;