Structure RECT
La structure de type RECT
Définition des coordonnées du coin supérieur gauche et du coin inférieur droit d'un rectangle.
typedef struct _RECT {
LONG left; // X du coin supérieur gauche
LONG top; // Y du coin supérieur gauche
LONG right; // X du coin inférieur gauche
LONG bottom; // Y du coin inférieur gauche
} RECT, *PRECT;
Fonctions disponibles pour manipuler la structure RECT:
SetRect pour définir les coordonnées dans une structure RECT:
BOOL SetRect(
LPRECT lprc, // rectangle
int xLeft, // x à gauche
int yTop, // y en haut
int xRight, // x à droite
int yBottom // y en bas
);
OffsetRect (LPRECT lprc,int x,int y) : déplacer les coordonnées d'un rectangle de la valeur x et y
InflateRect (LPRECT lprc,int x,int y) : Augmenter ou diminuer la taille d'un rect
SetRectEmpty (LPRECT lprc) : Mettre à zéro les champs de la structure rect
CopyRect (LPRECT DestRect, LPRECT SrcRect) : copier le contenu de la sturcture vers une autre
IntersectRect (LPRECT DestRect, LPRECT SrcRect1, LPRECT SrcRect2) : Former une nouvelle structure rect qui est le résultat de l'intersection des deux premières
UnionRect (LPRECT DestRect, LPRECT SrcRect1, LPRECT SrcRect2) : Former une nouvelle structure rect qui est le résultat de la réuion des deux premières
bEmpty = IsRectEmpty (LPRECT lprc) : Permet de savoir si une structure est vide
nInRect = PtInRect (LPRECT lprc, LPPOINT point) pour savoir si un point et ou non dans les coordonnées du rect
Certaines de ces fonctions peuvent paraître lourdes. Par exemple, copier 2 structures RECT se fait de la manière suivante: DestRect = SrcRec
Annexe
BOOL InvalidateRect(HWND hWnd,CONST RECT* lpRect,BOOL bErase); pour invalider une zone de la fenêtre.