Nom d'une Font à partir de son handle. [Résolu]

Signaler
Messages postés
223
Date d'inscription
mercredi 13 juillet 2005
Statut
Membre
Dernière intervention
8 août 2011
-
Messages postés
223
Date d'inscription
mercredi 13 juillet 2005
Statut
Membre
Dernière intervention
8 août 2011
-
Bonjour,



J'aimerai obtenir le nom de la police d'un contrôle Edit d'une application externe à partir de son handle.

Pour le handle la fonction est la suivante :



//Cette fonction renvoi le handle de la police utilisé par le contrôle Edit.

//hEdit étant le handle du contrôle Edit.

hFont = SendMessage(hEdit, WM_GETFONT, 0, 0);



Comment à partir de hFont je peux obtenir le nom (ex : Arial, Tahoma...)



Merci d'avance

2 réponses

Messages postés
46
Date d'inscription
mercredi 8 septembre 2004
Statut
Membre
Dernière intervention
25 août 2006

Salut

Tu peux essayer de récupérer les informations de la police à partir du handle dans une structure LOGFONT:



LOGFONT lf;

GetObject (hFont, sizeof (LOGFONT), (LPVOID) &lf); //On
obtient les informations de l'objet GDI passé en premier argument, on
précise a taille du buffer qui reçoit les informations et on lui donne
en dernier argument un pointeur

//Reste des opérations : lf.lfFaceName contient le nom de la police

MessageBox (HWND_DESKTOP, lf.lfFaceName, "Nom de la police :", MB_OK);



En principe ça marche, et je vois pas pourquoi ça ne fonctionnerait pas :)
Messages postés
223
Date d'inscription
mercredi 13 juillet 2005
Statut
Membre
Dernière intervention
8 août 2011

Merci beaucoup PLUiK,

ça fonctionne nickel avec la rectification suivante :



//On cast hFont qui était en LRESULT puisque résultant de la //fonction SendMessage.

GetObject ((HFONT)hFont, sizeof(LOGFONT), (LPVOID)&lf);