Hi,
Eine repeat Schleife in einem Timer ist generell eigentlich nicht zu empfehlen.. vorallem nicht wenn sie die Aufgabe des Timers übernehmen soll...
Wie wärs mit:
Delphi-Quellcode:
var Winkel: Integer = 180;
procedure TForm1.Timer1Timer(Sender: TObject);
var xmitte,
ymitte,
radius,
xsonne,
ysonne:integer;
begin
xmitte:= Width div 2;
ymitte:= Height div 2;
radius:= 1;
xsonne:= round(radius* (xmitte+ cos(winkel/180)*pi)*100);
ysonne:= round(radius* (ymitte- sin(winkel/180) *pi)*100);
winkel:= winkel -1;
sonne.Top:= ysonne;
sonne.Left:=xsonne;
winkel:= winkel -1;
if winkel< 0 then
winkel:=winkel+180;
end;
Ich kann nicht dafür garantieren aber probiers mal...
Gruß
Neutral General
Michael
"Programmers talk about software development on weekends, vacations, and over meals not because they lack imagination,
but because their imagination reveals worlds that others cannot see."