Formatierter Chat

seQualizer

Grünschnabel
Hallo Leute.
Habe ein Chatprogramm gebastelt, mit dem ich ohne Probleme mit x-beliebigen Usern chatten kann.
Ist alles mit Winsock realisiert und die Daten kommen in einer Listbox an bzw. werden erst vom winsock element "abgefangen" und dann einer Listbox hinzugefügt.

Das mach ich dann folgendermaßen:
Winsock empfängt es und fügt es in Variable sReturn ein.
Dann wird es in die Listbox geschrieben:

ChatListBox.AddItem (sReturn)

Funktioniert auch so ganz gut.Bloss da die Listbox keinen Formatierten text anzeigen können müsste es ja mit einer RichTextBox realisiert werden.
Jedoch bin ich da im Moment grade am verzweifeln.
Mit dem verschicken von Formatierten Text klappt es auch einigermaßen, jedoch steht dann der vorige Text nicht mehr da.Ausserdemkann ich den Nickname irgendwie nicht anzeigen.
Also folgenden soll geschehen:

• Formatierter Text wird aus RichTextBox verschickt
Jedoch soll auch der Nickname, der in Variable sNickname steht dem Text, der verschickt wird hinzugefügt werden

• In RichTextBox, wo der Text empfangen wird soll es dann folgendermaßen aussehen.

TestPerson sagt:
Hier steht die Nachricht

TestPerson2 sagt:
Hier steht die Nachricht2

TestPerson3 sagt:
Hier steht die Nachricht3

Wie kann ich also realisieren, das er die empfangen Nachrichten nur hinzufügt eine Zeile tiefer?
Ich wäre über jeden Tipp dankbar.

Danke

gruß seQualizer

EDIT: Benutze VB6
 
Hi

ChatListBox.AddItem (sNickname & " sagt:")
ChatListBox.AddItem (sReturn)

oder

Text1.Text = Text1.Text & sNickname & " sagt:" & VbCrLf & sReturn & VbCrLf

Du musst allerdings aufpassen, denn irgendwann ist alles einmal voll. Also eine Begrenzung einfügen mit
If ChatListBox.listcount > 100 then ...
oder so.
Cu
 
Hi

ChatListBox.AddItem (sNickname & " sagt:")
ChatListBox.AddItem (sReturn)

oder

Text1.Text = Text1.Text & sNickname & " sagt:" & VbCrLf & sReturn & VbCrLf

Du musst allerdings aufpassen, denn irgendwann ist alles einmal voll. Also eine Begrenzung einfügen mit
If ChatListBox.listcount > 100 then ...
oder so.
Cu

Du weißt, dass ich ne RichTextBox verwende ne? ;)
 
Elvan hat dir mit der zweiten Variante ja schon die Lösung geliefert (hab hier den RTB-Namen korrigiert):
Visual Basic:
RichTextBox1.Text = RichTextBox1.Text & sNickname & " sagt:" & vbNewLine & sReturn & vbNewLine
Dabei wird erst der RTB-Inhalt genommen, der Nickname hinzugefügt, dann ein Zeilenumbruch (Sorry Elvan, ich benutze lieber vbNewLine als VbCrLf , da sieht man schon am Namen, was der Befehl tut), dann dein Text und schlußendlich wieder ein Zeilenumbruch.

Funktioniert sowohl in der Textbox als auch in der Richtextbox.


Der Doc!
 
Zurück