@Dax: ich muss leider enttäuchen. Es gibt eine Funktion die ein Array von punkten nimmst um die Region zu setzen aber bei dynamichen Array schlägt das fehl, man muss da ein statiches Angeben
So funktionierts:
Delphi-Quellcode:
var HR: HRgn;
neu:
array[0..8]
of TPoint;
begin
neu[0] := Point(1,1);
neu[1] := Point(80,1);
neu[2] := Point(80,50);
neu[3] := Point(1,50);
neu[4] := Point(1,1);
neu[5] := Point(400,1);
neu[6] := Point(400,150);
neu[7] := Point(90,150);
neu[8] := Point(90,1);
HR:= CreatePolygonRgn(neu, length(neu), ALTERNATE);
SetWindowRgn(
Handle, HR, True);
würde man neu allerdings so definieren
Delphi-Quellcode:
neu: array of TPoint;
begin
setlength(neu, 9);
so funktioniert das ganze nicht mehr - leider