Bonjour,

Dans un composant je crée une région où je ne peux pas dessiner.
La région est créée par rapport à un point d'origine que je ne connais pas.
En fait, je cherche la référence de ce point d'origine de façon à corriger ma région par un ordre OffsetRgn.

(le canvas commence au Left/top du composant)

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
  R1: HRGN;
  R2: HRGN;
begin
  R1 := CreateRectRgn(10, 10, 50, 50);        // zone ou ne pas dessiner
  R2 :=  CreateRectRgn(0, 0, Width, Height);// zone total du canvas
   CombineRgn(R1 , R1, R2, RGN_XOR);        // Région correcte à l'offset prés
 // OffsetRgn(R1, ZeroPos.X, ZeroPos.Y);  <--- Quelle offset utiliser pour recaler la région ?
   SelectClipRgn(Canvas.Handle, R1);
 
Dessiner ici ...
 
  deleteObject(R1);
  deleteObject(R2);
  SelectClipRgn(Canvas.Handle, 0);
End;