Dessiner lentement?

Résolu
cs_Jean_Jean Messages postés 615 Date d'inscription dimanche 13 août 2006 Statut Membre Dernière intervention 13 décembre 2018 - 26 sept. 2007 à 06:55
cs_Jean_Jean Messages postés 615 Date d'inscription dimanche 13 août 2006 Statut Membre Dernière intervention 13 décembre 2018 - 26 sept. 2007 à 09:29
Bonjour,
N'ayant pas trouver de solution, je demande votre éclairage.
Voilà, je dessine un graphe sur un PaintBox.PaintBox1Paint(Sender: TObject); appelle DessineCourbe;
dans laquelle je dessine mes axes et ma courbe. Je souhaiterai que cette courbe se dessine lentement, sans clignotemen!
Qu'elle technique me conseillez-vous?
Utilisation d'un timer?
Dois-je introduire une boucle supplémentaire dont je pourrai régler la borne?
Voici le code DessineCourbe; 
    for i := 0 to High(Pts) do
    begin
      Pts[i].X := origin.x + Round(ValRad * xPts / Pi);
      Pts[i].Y := origin.y - Round(Sin(ValRad) * yPts);
      ValRad   := ValRad + Pas;
    end;
    Polyline(Pts);
Merci.

Jean_Jean

2 réponses

Guillemouze Messages postés 991 Date d'inscription samedi 25 octobre 2003 Statut Membre Dernière intervention 29 août 2013 6
26 sept. 2007 à 09:07
moi je ferai comme ca :
   for i := 0 to High(Pts) do
    begin
      Pts[i].X := origin.x + Round(ValRad * xPts / Pi);
      Pts[i].Y := origin.y - Round(Sin(ValRad) * yPts);
      ValRad   := ValRad + Pas;
    end;

MoveTo(Pts[0].X, Pts[0].Y)
for i := 1 to high(Pts) do
begin
    LineTo(Pts[i].X, Pts[i].Y);
    Application.ProcessMessages; // tu as peut etre pas besoin de ca
    sleep(30);
end;
   
3
cs_Jean_Jean Messages postés 615 Date d'inscription dimanche 13 août 2006 Statut Membre Dernière intervention 13 décembre 2018 3
26 sept. 2007 à 09:29
Génial Guillemouze!
J'avais oublié cette instruction sleep.
ça marche également sans processMessage. pourtant, cela doit bien faire appel à elle.
Merci
Jean_Jean
0
Rejoignez-nous