Nom d'une Font à partir de son handle.

Résolu
HeavenForsaker Messages postés 223 Date d'inscription mercredi 13 juillet 2005 Statut Membre Dernière intervention 8 août 2011 - 20 janv. 2006 à 17:47
HeavenForsaker Messages postés 223 Date d'inscription mercredi 13 juillet 2005 Statut Membre Dernière intervention 8 août 2011 - 20 janv. 2006 à 19:05
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

PLUiK Messages postés 46 Date d'inscription mercredi 8 septembre 2004 Statut Membre Dernière intervention 25 août 2006
20 janv. 2006 à 18:16
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 :)
3
HeavenForsaker Messages postés 223 Date d'inscription mercredi 13 juillet 2005 Statut Membre Dernière intervention 8 août 2011
20 janv. 2006 à 19:05
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);
0
Rejoignez-nous