Pb RichEdit/mfc

Signaler
Messages postés
137
Date d'inscription
lundi 17 décembre 2001
Statut
Membre
Dernière intervention
30 septembre 2004
-
Messages postés
584
Date d'inscription
mardi 26 novembre 2002
Statut
Membre
Dernière intervention
29 mai 2015
-
Bonjour,

voila, j'ai le code suivant qui est cense m'ecrire une sorte de prompt avec ensuite du texte. Je souhaite que le prompt soit en couleur mais que le texte ne le soit pas.
j'ai un pb car la couleur se deplace sur le texte. Au lieu de me selectionne a chaque fois juste le prompt, il selectionne en glissant.

long		size;
long		size_temp;
CHARFORMAT2	cf;
CHARFORMAT2	cf_temp;
[...]
m_rich.GetSelectionCharFormat(cf_temp);
size = m_rich.GetTextLength();
m_rich.SetSel(size, size);
m_rich.ReplaceSel("prompt en couleur > ");
size_temp = m_rich.GetTextLength();
m_rich.SetSel(size, size_temp);
ZeroMemory(&cf, sizeof(CHARFORMAT2));
cf.cbSize = sizeof(CHARFORMAT2);
cf.dwMask = CFM_COLOR;
cf.crTextColor = RGB(0,0,255);
m_rich.SetSelectionCharFormat(cf);
m_rich.SetSel(size_temp, size_temp);
m_rich.ReplaceSel("texte normal\r\n");
size = m_rich.GetTextLength();
m_rich.SetSel(size_temp, size);
m_rich.SetSelectionCharFormat(cf_temp);
m_rich.SetSel(size, size);


Si vous avez une solution, je suis preneur, je pense que ca vient du \r\n qui doit rajouter 1 caractere en plus, mais meme en le rajouter dans la taille du texte, puis fesant -1 dansl a selectionne ca donne la meme chose.

D'avance merci.

Arno

1 réponse

Messages postés
584
Date d'inscription
mardi 26 novembre 2002
Statut
Membre
Dernière intervention
29 mai 2015

J'ai testé ton code chez moi et ça tourne nickel ! Qu'est-ce que tu veux dire par "la couleur glisse sur le texte" ?