Entwickler-Ecke

Multimedia / Grafik - alte linie löschen


DiggiDi - Mo 26.01.04 17:32
Titel: alte linie löschen
hallo leute ich wollte mal heute ne kleine digitale uhr proggen aber nun hab ich folgendes problem:


Delphi-Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
procedure TForm1.Timer1Timer(Sender: TObject);
var winkel,x,y,x2,y2,vorherx,vorhery : Integer;
    hour, min, sec, msec: Word;
begin
  Refresh;
  Label1.Caption:= TimeToStr(Now);
  DecodeTime(Now, hour, min, sec, msec);
  x2:=Image1.Width div 2;
  y2:=Image1.Height div 2;
  Image1.canvas.Pen.Mode:= pmNotXor;

  //Sekundenzeiger
  Berechne_xy(((2*pi)/60) * sec, x, y);
  Image1.Canvas.moveto(x2, y2);
  Image1.Canvas.LineTo(vorherx,vorhery);
  Image1.Canvas.moveto(x2, y2);
  Image1.Canvas.LineTo(x,y);
  vorherx:=x;
  vorhery:=y;


also bei sekundenzeiger versuch er als erstes die alte linie zu löschen aber da der vorher x und y wert noch nicht initialisiert ist macht er erst mal gar nix. dann zeichnet er die aktuele linie und merkt sich den wert. beim nächsten durchgang ist ja vorher x und y schon festgelegt also sollte er eigentlich die alte linie löschen macht er aber nicht.
hilft mir mal bitte wo hab ich ein fehler gemacht?


DiggiDi - Mo 26.01.04 17:51

hat sich erledigt man musste nur die linie zweimal berechnen beim ersten mal einfach bei sec-1 machen und das wars *g* ich poste den ganzen code später im open source forum falls das einer haben will also kann das schon mal geclosed werden.