RGNDATA

Signaler
Messages postés
56
Date d'inscription
lundi 15 mars 2004
Statut
Membre
Dernière intervention
24 mai 2006
-
Messages postés
2070
Date d'inscription
mardi 22 avril 2003
Statut
Membre
Dernière intervention
3 juillet 2006
-
bonjours, est ce que quelqu'un peut m'expliquer le rôle de RGNDATA et du champ Bufferqu'il integre.

Merci pour vos réponse:

j'ai lu MSDN et :shock) rien compris !!!!

Seito

1 réponse

Messages postés
2070
Date d'inscription
mardi 22 avril 2003
Statut
Membre
Dernière intervention
3 juillet 2006
8
soit un objet HREGION hRgn dont on souhaite récupérer les diférrents rectangle la composant :

// détermination taille nécessaire et allocation
DWORD dwSize = GetRegionData(hRgn, 0, NULL);
LPBYTE lpMem = new BYTE[dwSize];
LPRGNDATA lpRgnData = (LPRGNDATA) lpMem;

// récupération des données
lpRgnData->rdh.dwSize = sizeof(RGNDATAHEADER);
GetRegionData(hRgn, lpRgnData, dwSize);

// accès aux rectangles :
for(int i = 0; i < lpRgnData->rdh.nCount; i++)
{
RECT rc;
memcpy(&rc, lpRgnData->Buffer + i*sizeof(RECT), sizeof(RECT));
}