Autoscrool sur une listBox

billou_13 Messages postés 860 Date d'inscription jeudi 4 mars 2004 Statut Membre Dernière intervention 19 août 2014 - 5 mai 2004 à 10:59
jeromefer Messages postés 11 Date d'inscription dimanche 14 janvier 2007 Statut Membre Dernière intervention 22 septembre 2008 - 25 déc. 2007 à 12:45
Voila mon petit problème qui ne doit pas en être un gros.

J'ai programmé un chat en delphi et pour conserver les messages (c'est a dire la liste de messages du salon), j'ai utilisé une listbox.

Mais le petit problème est que des que les messages commencent a dépassé la hauteur de la liste box, on voit une barre de défilement qui apparait. Jusque la vous me direz normal.

Mais ce qui m'embete est que des qu'un message est envoyé, la barre de defilement reste en haut et ne descend pas au fur et a mesure des messages comme dans un vrai chat.

Comment remedier a ce petit problème SVP ?

J'espere que j'ai été assez clair.

Merci pour vos reponses.

Billou_13

3 réponses

cs_Delphiprog Messages postés 4297 Date d'inscription samedi 19 janvier 2002 Statut Membre Dernière intervention 9 janvier 2013 32
5 mai 2004 à 12:16
Je suppose que tu emploies la méthode Add pour ajouter des messages à la listBox. Or, cette méthode renvoie l'index de l'élément ajouté à la liste. Il suffit donc de l'exploiter (ce qui, bien souvent, n'est pas le cas) de la façon suivante :
ListBox.ItemIndex := ListBox.Items.Add(MonMessage);

Ainsi, le curseur de défilement sera synchronisé avec la position réelle de la sélection.
May Delphi be with you
0
japee Messages postés 1727 Date d'inscription vendredi 27 décembre 2002 Statut Modérateur Dernière intervention 6 novembre 2021 8
5 mai 2004 à 14:31
Oh oui, simple et efficace.
Remplace avantageusement :
ListBox.Items.Add(MonMessage);
ListBox.ItemIndex := ListBox.Items.Count -1;
comme je faisais, mais je ne sui semble-t'il pas le seul ;)

Pour anticiper sur la question suivante, si l'on ne veut pas que le dernier Item ajouté reste sélectionné, on peut ajouter :

ListBox.ItemIndex := -1;


Bonne prog' :-p
0
jeromefer Messages postés 11 Date d'inscription dimanche 14 janvier 2007 Statut Membre Dernière intervention 22 septembre 2008
25 déc. 2007 à 12:45
Bonjour a tous et Merci pour l'astuce et l 'exemple bien pratique.
Bien vu encore une foi de plus
Jerome
0
Rejoignez-nous