BombStrike
Messages postés23Date d'inscriptionlundi 1 juillet 2002StatutMembreDernière intervention27 juin 2004
-
31 déc. 2003 à 16:46
Anacr0x
Messages postés515Date d'inscriptiondimanche 25 mai 2003StatutMembreDernière intervention27 avril 2006
-
1 janv. 2004 à 14:22
comment ajouter du texte a la fin d'un richedit ?
j'ai beau essayer en placant le curseur a la fin du richedit et en faisant REPLACESEL, il ne m'ajoute que le 1er mot et ne tient pas compte des espaces :(
Anacr0x
Messages postés515Date d'inscriptiondimanche 25 mai 2003StatutMembreDernière intervention27 avril 20062 1 janv. 2004 à 14:22
voila une petite fonction a moi qui permet de rajouter du texte dans un richedit en pouvant ajouter un charformat si necessaire (sinon, mettre NO_CHARFORMAT en 4eme param)
PS : je ne sais pas pk, mais l'ajout de format ne semble pas marché avec un richedit 2.0 mais avec seulement avec les versions antérieurs
/////////////Permet d'ajouter un txt selon un format (gras etc..)///////////////
CHARFORMAT NO_CHARFORMAT; // Utilisé quand on veut une chaine normale
void AddTxtEx(HWND hDlgMere, int hDlgEdit, char *phrase, CHARFORMAT cf)
{
// Initialisation des variables utilisés
int n=0, n2=0;
NO_CHARFORMAT.cbSize=0;
// Se place d'abord a la fin
n = (int)SendDlgItemMessage(hDlgMere, hDlgEdit, WM_GETTEXTLENGTH, 0, 0)+1;
SendDlgItemMessage(hDlgMere, hDlgEdit, EM_SETSEL, n, n);
// On rajoute le texte
SendDlgItemMessage(hDlgMere, hDlgEdit, EM_REPLACESEL, TRUE, (LPARAM) phrase);
// Selectionne la partie et la change (sauf si NO_CHARFORMAT en param)
n2 = (int)SendDlgItemMessage(hDlgMere, hDlgEdit, WM_GETTEXTLENGTH, 0, 0)+1;
if(cf.cbSize!=0)
{
SendDlgItemMessage(hDlgMere, hDlgEdit, EM_SETSEL, n-1, n2);
SendDlgItemMessage(hDlgMere, hDlgEdit, EM_SETCHARFORMAT, SCF_SELECTION, (LPARAM) &cf);
}
// Remet la sélection à la fin (au cas ou...)
SendDlgItemMessage(hDlgMere, hDlgEdit, EM_SETSEL, n2, n2);
}
////////////////////////////////////////////////////////////////////////////////