CONTROLE EDIT

Résolu
Telemorphix Messages postés 2 Date d'inscription mardi 27 février 2007 Statut Membre Dernière intervention 1 mars 2007 - 28 févr. 2007 à 23:50
Telemorphix Messages postés 2 Date d'inscription mardi 27 février 2007 Statut Membre Dernière intervention 1 mars 2007 - 1 mars 2007 à 12:10
Bonjour,
Je fais mes premiers pas en ce moment en C et C++ (Visual C++ 6.0) et sur l'API Windows.
Je souhaite afficher du texte dans une fenêtre EDIT multiligne (API Windows). J'arrive à y afficher que sur la première ligne avec la fonction SendDlgItemMessage(Dlg,IDC_EDIT2,WM_SETTEXT,0,(LPARAM)chaine);. Je ne sais pas comment faire pour passer à la ligne suivante, afin d'obtenir un remplissage de la boite EDIT au fur et à mesure de l'arrivée des chaînes de caractères.
Si quelqu'un a une idée, elle serait la bienvenue. Par avance merci .

Télémorphix .

2 réponses

BruNews Messages postés 21040 Date d'inscription jeudi 23 janvier 2003 Statut Modérateur Dernière intervention 21 août 2019
28 févr. 2007 à 23:58
SetWindowText (idem à WM_SETTEXT) remplace le contenu par ce que tu envoies, pas bon dans ton cas.

EM_REPLACESEL
avec au besoin EM_SETSEL pour placer le caret à la fin.

ciao...
BruNews, MVP VC++
3
Telemorphix Messages postés 2 Date d'inscription mardi 27 février 2007 Statut Membre Dernière intervention 1 mars 2007
1 mars 2007 à 12:10
Merci à toi BruNews.
J'ai solutionné mon problème. En effet l'utilisation de EM_REPLACESEL à la place de WM_SETTEXT évite l'effacement de l'ensemble de la fenêtre EDIT d'une part, et d'autre part pour le passage à la ligne j'ai rajouté \r\n à la fin des chaînes (au début j'avais essayé \n seul ce qui affichait un carcatère bizarre !).
Je peux passer aux étapes suivantes.

Bye !
Télémorphix.
3
Rejoignez-nous