Protocol

Signaler
Messages postés
104
Date d'inscription
dimanche 29 octobre 2000
Statut
Membre
Dernière intervention
12 décembre 2005
-
Messages postés
833
Date d'inscription
dimanche 6 janvier 2002
Statut
Membre
Dernière intervention
3 novembre 2005
-
Bonjour, je fais un client pour un chat et lorsque j'envoi d utexte au serveur, ou que jen recoi, le protocol(couleur style etc) saffiche sur le memo ou apparait le text.Je crois qu'il fo fair un tableau de tri pour ne plus l'afficher mais j'ai aucune idée de la maière dont il fautr sy prendre.

Merci de m'aider :)

++

10 réponses

Messages postés
833
Date d'inscription
dimanche 6 janvier 2002
Statut
Membre
Dernière intervention
3 novembre 2005
1
Si j'ai bien compris, ce que tu appelles "protocole", c'est en quelque sorte des balises spécifiant la mise en forme du texte ?

A ce moment, quand tu reçois le texte, n'y a-t-il pas possibilité de le placer dans une variable, puis d'utiliser des Pos(...) pour récupérer la position des balises qui encadrent le texte, puis deux delete(...) pour les enlever... ENsuite, tu le fais passer dans ton memo

Ca ne doit pas être la meilleure solution, mais ça doit pouvoir marcher...

Bonne prog' !
Bestiol.
Messages postés
104
Date d'inscription
dimanche 29 octobre 2000
Statut
Membre
Dernière intervention
12 décembre 2005

Ca serait déja pas mal... si je savais comment fair, et oui je suis pas très bon, c'est vrai que jai taper un peut haut comme prog...

++
Messages postés
833
Date d'inscription
dimanche 6 janvier 2002
Statut
Membre
Dernière intervention
3 novembre 2005
1
Mais non, faut pas dire ça !!
C'est le meilleur moyen de réussir à faire quelque chose, même si c'est moins que ce que tu espérais !!

Alors, voici comment tu pourrais procéder :

Quand tu récupères ton texte, tu le place dans une variable "Texte" de type string... En supposant que la première balise qui SUIT le texte envoyé est toujours /color (par exemple), tu peux faire :

Delete(Texte, Pos('/color', Texte), Length(Texte));

Ceci t'enlèveras toutes les balises situées après le texte...
Pour celles situées avant :
En toute logique (par rapport à l'HTML), si /Color suit directement le texte, alors c'est une balise de type [color=red] qui le précèdera...
Tu peux donc faire ceci :

Delete(Texte, 1, Pos('[color=', Texte));
Delete(Texte, 1, Pos(']', Texte));

Ainsi les balises précédant ton texte seront supprimées en deux temps : les balises précédant la balise qui précède le texte (tu suis ?!! lol) sont supprimées, puis celle qui précède le texte...

Voilà, ça devrait normalement marcher... A toi d'adapter ce que je viens de te donner à tes besoins, et au type de "balises" présentent dans le protocole...

Bonne prog' !
Bestiol.
PS: Comme j'ai fais tout ça de tête et que je ne peux pas vérifier ce que j'avance, il est possible que j'ai fait une ou deux erreurs par rapport aux paramètres à passer à Delete ou à Pos... Je m'en excuse d'avance !
Messages postés
104
Date d'inscription
dimanche 29 octobre 2000
Statut
Membre
Dernière intervention
12 décembre 2005

Ok on va essayer ca merci beaucoup!

++
Messages postés
104
Date d'inscription
dimanche 29 octobre 2000
Statut
Membre
Dernière intervention
12 décembre 2005

Euh... ptit problème :)

Comment je place le text ds le string ?

++
Messages postés
833
Date d'inscription
dimanche 6 janvier 2002
Statut
Membre
Dernière intervention
3 novembre 2005
1
Si tu veux que je te réponde, il faut d'abord que tu dises comment tu faisais pour mettre le texte dans ton memo !!

Donne la fonction que tu utilisais, l'évènement dans lequel tu procédais, et, tant qu'à faire, quel composant tu utilises...

Bonne prog' !
Bestiol.
Messages postés
104
Date d'inscription
dimanche 29 octobre 2000
Statut
Membre
Dernière intervention
12 décembre 2005

Ba j'utilise ClientSocket...
Pour le le texte ds le memo j'ai :

Form3.Memo1.Lines.Add( Socket.ReceiveText);

dans Onread
++
Messages postés
833
Date d'inscription
dimanche 6 janvier 2002
Statut
Membre
Dernière intervention
3 novembre 2005
1
Vu ce que tu me dis, je vois pas ce qui t'empêche de faire "MaString := Socket.ReceiveText"...

Bonne prog' !
Bestiol.
Messages postés
104
Date d'inscription
dimanche 29 octobre 2000
Statut
Membre
Dernière intervention
12 décembre 2005

ba c'est on ca marche,

je te remerci beaucoup :)

++
Messages postés
833
Date d'inscription
dimanche 6 janvier 2002
Statut
Membre
Dernière intervention
3 novembre 2005
1
De rien, c'est normal !

Bonne continuation !
Bestiol.