Question idiote ??

cs_Bestiol Messages postés 833 Date d'inscription dimanche 6 janvier 2002 Statut Membre Dernière intervention 3 novembre 2005 - 31 mars 2002 à 00:25
cs_Bestiol Messages postés 833 Date d'inscription dimanche 6 janvier 2002 Statut Membre Dernière intervention 3 novembre 2005 - 31 mars 2002 à 15:26
Hello !!

J'aurais besoin d'un petit coup de main :
J'essaye d'utiliser des sockets, et en particulier de recevoir correctement le texte envoyé puis de le mettre dans un TMemo... Seulement j'arrive pas à "reconnaître" si la touche [ENTREE] a été pressée...

Pour être plus clair, voici ce que je voudrais faire :
If Socket.ReceiveText = ?? Then Memo.Lines.Add('')

Ca doit vraiment être un truc tout bête, mais je vois pas... :blush) J'ai essayé plusieurs soluces et rien ne marche, alors j'espère que l'un de vous pourra m'aider !!

Merci d'avance :big)
Bestiol.

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
31 mars 2002 à 11:42
Euh...et :
Memo1.Lines.AddStrings(Socket.ReceiveText)

çà fonctionne ?
La propriété Receivetext est de type TStrings de même que la propriété Lines de Memo1.

Je l'ai simulé avec 2 composants mémo, ce là fonctionne, alors pourquoi pas avec un socket.

Le type TStrings découpe les chaines dès qu'il détecte un caractère CrLf et construit automatiqement un tableau de chaînes qu'il suffit d'affecter à Memo pour le visualiser.

May Delphi be with you.
0
cs_Delphiprog Messages postés 4297 Date d'inscription samedi 19 janvier 2002 Statut Membre Dernière intervention 9 janvier 2013 32
31 mars 2002 à 11:55
Et d'un j'ai dû mal comprendre la question :
La touche entrée a comme code ASCII 13 :

If Pos(#13, Socket.ReceiveText) > 0 then
Then Memo.LLines.Add('');

et de deux; la propriété ReceiveText n'est pas de type TStrings mais de type String ! Tu peux donc l'ajouter quand même mais d'une autre façon :

Memo.lines.add(Socket.ReceiveText).

May Delphi be with you.
:blush)
0
cs_Bestiol Messages postés 833 Date d'inscription dimanche 6 janvier 2002 Statut Membre Dernière intervention 3 novembre 2005 1
31 mars 2002 à 15:26
Merci pour ta réponse, Delhpiprog !!

Ce que tu me propose me paraît intéressant, mais je crois que moi même avait fait une petite erreur...

Mon problème principal était surtout d'envoyer le saut de ligne... Mais j'ai [enfin] la solution !! Il suffisait de faire
If Key = VK_RETURN Then Server.Socket.Connections[0].SendText(#13#10);

Merci encore, je vais essayer ta soluce pour la "réception" !!
Bestiol.
0
Rejoignez-nous