Récupérer region d'un fenêtre [Résolu]

Signaler
Messages postés
6535
Date d'inscription
lundi 16 décembre 2002
Statut
Modérateur
Dernière intervention
22 août 2010
-
Messages postés
6535
Date d'inscription
lundi 16 décembre 2002
Statut
Modérateur
Dernière intervention
22 août 2010
-
Salut,

Mon problème est simple (a comprendre): SetWindowRgn sert a choisir la région d'une fenêtre, mais GetWindowRgn ne sert pas a récupérer cette région, mais seulement son type. Y a-t-il un moyen récupérer la région d'une fenêtre?
En fait je ne comprends pas vraiment ce qu'est un region: apparemment on peut la supprimer avec DeleteObject, mais on ne peut pas la récupérer avec GetCurrentObject ni GetObject.
J'avais pensé la récupérer en appelant SelectObject, puisque cette fonction renvoie l'ancien objet du dc, mais ca n'est pas genial.
Merci.

4 réponses

Messages postés
1905
Date d'inscription
mercredi 22 janvier 2003
Statut
Membre
Dernière intervention
17 septembre 2012
2
Salut,
HRGN est en fait un pointeur sur une structure HRGN__ donc la variable est passée par addresse.

L'exemple de MSDN est:
HRGN hrgn = CreateRectRgn(0,0,0,0);
int regionType = GetWindowRgn(hwnd, hrgn);

as tu appelé CreateRectRgn(...)?
Messages postés
1905
Date d'inscription
mercredi 22 janvier 2003
Statut
Membre
Dernière intervention
17 septembre 2012
2
Salut,
D'apres ce que j'ai compris, GetWindowRgn(...) sert a récuperer la région de la fenetre, en plus de son type.
La fonction modifie le handle que tu passes en 2eme param (elle le remplace par le handle de la region de la fenetre).
Messages postés
6535
Date d'inscription
lundi 16 décembre 2002
Statut
Modérateur
Dernière intervention
22 août 2010
7
Moi la region reste a 0, rien d'étonnant pour une variable qu'on passe par valeur...
Messages postés
6535
Date d'inscription
lundi 16 décembre 2002
Statut
Modérateur
Dernière intervention
22 août 2010
7
Ah bah oui tiens ca marche. Vraiment je trouve ca bizarre comme utilisation...
Merci pour ton aide