Ajouter du texte dans une richedit

Signaler
Messages postés
1243
Date d'inscription
jeudi 31 mars 2005
Statut
Membre
Dernière intervention
3 août 2016
-
Messages postés
1243
Date d'inscription
jeudi 31 mars 2005
Statut
Membre
Dernière intervention
3 août 2016
-
Bonjour à tous,

Voila je cherche à savoir comment ajouter du texte, sans couleur ni rien dans ma richtext box, je me disait que vu que je ne voulai définir aucune police, SetWindowText, irai, mais non car il éfface le texte précédent, hors justement c'est pour cela que j'ai mis une richedit. Quelq'un peut-il me montrer simplement comment ajouter du texte ?

Merci d'avance.

++
deck_bsd
___________________________________
[http://deck-bsd.eurower.net]

15 réponses

Messages postés
21042
Date d'inscription
jeudi 23 janvier 2003
Statut
Modérateur
Dernière intervention
21 août 2019
27
EM_SETSEL
EM_REPLACESEL

va bon aussi sur un simple EDIT.

ciao...
BruNews, MVP VC++
Messages postés
3212
Date d'inscription
lundi 7 novembre 2005
Statut
Membre
Dernière intervention
16 février 2009
15
WM_SETTEXT

ou
EM_SETTEXTEX

dans un SendMessage je crois.

C++ (@++)<!--
Messages postés
3212
Date d'inscription
lundi 7 novembre 2005
Statut
Membre
Dernière intervention
16 février 2009
15
Oups. Trop tard...

C++ (@++)<!--
Messages postés
1243
Date d'inscription
jeudi 31 mars 2005
Statut
Membre
Dernière intervention
3 août 2016
2
Bon EM_SETTEXTEX ne fonctionne pas chez moi,

j'ai vu dans une des sources : EM_EXSETSEL puis un EM_REPLACESEL mais je comprend pas le fonctionnement car EXSETSEL est senser sélection une chaine , mais ou la sauvegarde-t-on ? et puis on fait un EM_REPLACESEL du nouveau texte a ajouter alors que on a pas remis l'ancienne sélection, je ne sais pas , je ne voi pas bien.

++
deck_bsd
___________________________________
[http://deck-bsd.eurower.net]
Messages postés
21042
Date d'inscription
jeudi 23 janvier 2003
Statut
Modérateur
Dernière intervention
21 août 2019
27
"remplacer" du texte au point de sélection, si la selection est de 0  caractères on va donc faire un simple ajout de texte, non ?

ciao...
BruNews, MVP VC++
Messages postés
1403
Date d'inscription
lundi 23 février 2004
Statut
Membre
Dernière intervention
11 janvier 2009
3
Salut deck_bsd,

c'est que tu n'as pas compris mon exemple que je t'avais donné ?

YOYO, @+.
"L'intelligence c'est comme un parachute, quand on en n'a pas...on s'écrase !"
Messages postés
6535
Date d'inscription
lundi 16 décembre 2002
Statut
Modérateur
Dernière intervention
22 août 2010
7
Faut juste faire un

EM_SETSEL avec wParam=lParam=position du curseur que tu veux (ce qui te fait une sélection  vide), puis un EM_REPLACESEL avec la chaine que tu veux, qui va remplacer la sélection, c'est-à-dire rien du tout.

_____________________________________
Un éditeur de ressources gratuit pour Windows
Messages postés
1243
Date d'inscription
jeudi 31 mars 2005
Statut
Membre
Dernière intervention
3 août 2016
2
Désoler du retard,

oki , je vai voir cela. Yoyo, ben j'ai compris mais je voulai que cela soit claire, car dans ton exemple, il y a tout un ta de choses que je n'ai pas besoins ;) .

++
deck_bsd
___________________________________
[http://deck-bsd.eurower.net]
Messages postés
1403
Date d'inscription
lundi 23 février 2004
Statut
Membre
Dernière intervention
11 janvier 2009
3
Si tu veux que je te fasse le tri dis le moi, y en a pas pour longtemps !

YOYO, @+.
"L'intelligence c'est comme un parachute, quand on en n'a pas...on s'écrase !"
Messages postés
1243
Date d'inscription
jeudi 31 mars 2005
Statut
Membre
Dernière intervention
3 août 2016
2
Vecchio existe-t-il une autre fonction ou autre pour récupérer la position du curseur dans la richedit que de faire un strlen pour récupérer la taille du texte ?

++
deck_bsd
___________________________________
[http://deck-bsd.eurower.net]
Messages postés
6535
Date d'inscription
lundi 16 décembre 2002
Statut
Modérateur
Dernière intervention
22 août 2010
7
Il faut utiliser EM_GETSEL, et pas strlen (car le curseur n'est pas toujours à la fin du texte)

_____________________________________
Un éditeur de ressources gratuit pour Windows
Messages postés
1243
Date d'inscription
jeudi 31 mars 2005
Statut
Membre
Dernière intervention
3 août 2016
2
oui getsel, j'y avait penser, mais justement , mon but est de toujours ajouter du texte a la fin et non en plein miliue, n'y a-t-il pas un message qui récupère directement la position de fin ? hormis un GETTEXTLENGH qui je pense fait la mm chose que strlen .

++
deck_bsd
___________________________________
[http://deck-bsd.eurower.net]
Messages postés
1403
Date d'inscription
lundi 23 février 2004
Statut
Membre
Dernière intervention
11 janvier 2009
3
Du moment que tu ne fais qu'ajouter du texte du début à la fin de ton programme, le curseur sera toujours placé à la fin de ton texte.

YOYO, @+.
"L'intelligence c'est comme un parachute, quand on en n'a pas...on s'écrase !"
Messages postés
6535
Date d'inscription
lundi 16 décembre 2002
Statut
Modérateur
Dernière intervention
22 août 2010
7
EM_GETTEXTLENGTHEX va très bien pour ca.
Ce n'est pas pareil que strlen, qui t'oblige à récupérer le texte auparavant

_____________________________________
Un éditeur de ressources gratuit pour Windows
Messages postés
1243
Date d'inscription
jeudi 31 mars 2005
Statut
Membre
Dernière intervention
3 août 2016
2
Voila , j'ai trouver : EM_GETTEXTLENGTH , car EM_GETTEXTLENGTH nécessite une structure.

++
deck_bsd
___________________________________
[http://deck-bsd.eurower.net]