Scrollbar automatique

Signaler
Messages postés
55
Date d'inscription
dimanche 10 février 2002
Statut
Membre
Dernière intervention
20 décembre 2005
-
Messages postés
1100
Date d'inscription
jeudi 24 avril 2003
Statut
Membre
Dernière intervention
17 octobre 2012
-
C'est que vous voyez je suis en train de faire un chat. Il est en API Windows. Pour afficher le texte qui est dit j'utilise un EDIT avec ces flags : WS_CHILD|WS_VISIBLE|WS_HSCROLL|WS_VSCROLL|ES_MULTILINE|ES_AUTOVSCROLL|ES_AUTOHSCROLL|ES_READONLY

Comme vous le savez probablement, quand le texte dans un chat arrive à la limite de la boîte qui affiche le texte, cette boîte défile tout seul. C'est donc ce que je voudrais faire. Je croyais que ES_AUTOVSCROLL ferait l'affaire, mais on dirait que non.

Merci d'avance.

8 réponses

Messages postés
6535
Date d'inscription
lundi 16 décembre 2002
Statut
Modérateur
Dernière intervention
22 août 2010
8
Il faut que tu appeles SBM_SETPOS quand tu recois EN_CHANGE ou EN_UPDATE qui indique que le texte à changé
Messages postés
55
Date d'inscription
dimanche 10 février 2002
Statut
Membre
Dernière intervention
20 décembre 2005

Tu veux dire dans un SendMessage ? Si oui la valeur de position je la met pour le wParam ou le lParam ?
Messages postés
6535
Date d'inscription
lundi 16 décembre 2002
Statut
Modérateur
Dernière intervention
22 août 2010
8
Dans le wParam, comme spécifié ici
Messages postés
55
Date d'inscription
dimanche 10 février 2002
Statut
Membre
Dernière intervention
20 décembre 2005

Problème : En_UPDATE ou EN_CHANGE s'applqiue parfaitement dans une edit ou on écrit, avec le clavier. Mais cepandant, rien ne se passe lorsque je rempli l'edit en READONLY avec du texte à l'aide du message SW_SETTEXT. Pourtant, il dise que ça marche avec ca dans MSDN. Aurais-tu une hypothèse ?
Messages postés
55
Date d'inscription
dimanche 10 février 2002
Statut
Membre
Dernière intervention
20 décembre 2005

Oh laisse tomber. Désolé j'avais pas lu le not.
Messages postés
55
Date d'inscription
dimanche 10 février 2002
Statut
Membre
Dernière intervention
20 décembre 2005

On. mais ça ne règle pas mon problème. Ça veut dire que cette technique ne fonctionne pas dans le cas ou j'en ai besoin. As-tu une autre solution ?
Messages postés
55
Date d'inscription
dimanche 10 février 2002
Statut
Membre
Dernière intervention
20 décembre 2005

Oh ca y est ! J'ai trouvé. Au cas où ça t'intéresserais, il faut envoyer une SendMessage à l,edit avec comme message EM_LINESCROLL. En wParam le scroll horizontal et en lParam le scroll vertical. Merci quand même pour ton aide.

Aux admins : faudrait une fonction edit sur ce forum :)
Messages postés
1100
Date d'inscription
jeudi 24 avril 2003
Statut
Membre
Dernière intervention
17 octobre 2012
7
Entièrement d'accord avec l'édit et en plus je rajouterais un delete pour effacer ses éventuels messages où on se trompe !!!

PS : Si tu veux faire une réclamation il y a "Ecrire aux admins"

Le créateur du site http://www.jscv.com