Changer la police de la selection courante [Résolu]

Signaler
Messages postés
15
Date d'inscription
mercredi 6 avril 2005
Statut
Membre
Dernière intervention
2 juin 2005
-
Messages postés
15
Date d'inscription
mercredi 6 avril 2005
Statut
Membre
Dernière intervention
2 juin 2005
-
Bonjour ,
j'ai deja pose une question presque similaire, mais je voudrais préciser ce que je souhaite arriver a faire :

Dans une application MDI, éditeur de texte je souhaite pouvoir modifier la police de la partie de texte que je selectionne :

pour faire cela j'utilise la fct ChooseFont(), qui me fait apparaitre une belle boite de dialogue dans laquelle je selectionne ma police.
Jusque la no prob....

Là ou j'ai du mal c'est pour appliquer ces modif au texte selectionné dans ma fenetre
J'utilise SendMessage(hWndEdit, EM_GETSEL, (WPARAM)&dwStartPos, (LPARAM)&dwEndPos); pour récupérer le texte sélectionné (ou plutot les indices des caracteres de debut et de fin), ensuite je pensais utiliser TextOut(); mais vois pas comment....y a un chipotage monstre pour les params requis...

Ma premiere idee etait d'utiliser EM_SETCHARFORMAT apres avoir récupéré le texte dans un buffer (grace a SendMessage(hWndEdit,EM_GETSEL,0,(LPARAM) &selection);)mais le compilateur me dit :
Error E2451 MDICHILD.C 94: Undefined symbol 'EM_SETCHARFORMAT' in function ChildWndProc
Erreur que je ne parviens pas a comprendre, il ne reconnait pas ses propres fct???!!!!
ou alors je l'utilise mal ou au mauvais endroit.... no se

si quelqu'un a un code, ou une explication... merci d'avance

2 réponses

Messages postés
6535
Date d'inscription
lundi 16 décembre 2002
Statut
Modérateur
Dernière intervention
22 août 2010
7
Tu dois inclure richedit.h pour ce message. EM_GETSEL est reconnu car il est aussi utilisé par les EDIT, donc windows.h suffit.

TextOut n'a rien a voir, ne l'utilise pas, c'est bien EM_SETCHARFORMAT qui correspond à ton problème
Messages postés
15
Date d'inscription
mercredi 6 avril 2005
Statut
Membre
Dernière intervention
2 juin 2005

merci beaucoup vecchio56

ct tout con, je m'en doutais....