Wie bereits gesagt hat der Source mehrere Fehler:
Als erstes:
Delphi-Quellcode:
hrgnClip: HRGN;
cxClient: Integer;
cyClient: Integer;
Müssen Global definiert sein nicht in WndProc
Dann in der Schleife zum Zeichnen:
Delphi-Quellcode:
for i := 0
to 359
do
begin
fangle := degToRad(i);
// Umwandeln zu Bogenmass da die Winkelfunktion damit arbeiten
MoveToEx(
dc,0,0,
nil);
LineTo(
dc,Round(fRadius*cos(fAngle)+0.5),Round(-fRadius*sin(fAngle)+0.5));
end;
Auch solltest Du Dir angewöhnen die Rückgabe der
WINAPI Funktion zu überprüfen
Also so etwas wie
(nur als Beispiel)
Delphi-Quellcode:
lErrorRgn := CombineRgn(hRgnClip,hRgnTemp[4],hRgnTemp[5], RGN_XOR);
case lErrorRgn of
NULLREGION : hRgnClip := CreateRectRgn(0,0,100,100);
SIMPLEREGION :;
COMPLEXREGION :;
ERROR : hRgnClip := 0;
end;