Hallo alle zusammen !
Zunächst möchte Ich sagen das mir das Portal sehr gut gefällt.
Grafisch sehr aufwendig gestaltet und schön Übersichtlich.
Super.
Zu meinem Problem :
Ich habe einen Chat Programiert indem Ich gerne Smileys benutzen möchte.
Eine passende Komponente dafür habe Ich auch gefunden unter :
Http://www.tmssoftware.com/
Ich benutze die Komponente : THtmlListbox
Die Komponente kann
Html Tags wie zb.
THtmlListbox.Items.Add('[img]idx:1[/img]'); // IDX:1 bezieht sich auf die TImageList.
In zusammenhang mit einer TImageList1.
Ich habe jetzt eine TMemo Komponente für denn Text der Eingegeben wird, und einen Sende Button mit folgendem Code :
Delphi-Quellcode:
//-------Prüfen ob text eingegeben wurde----------------------------------------
IF Nachricht.Lines.Count >0
THEN BEGIN
//------Solange laufen bis das Ende der BenutzerListe erreicht ist------
ServerLog.Lines.Add('
Server : Sende Nachrichten an Clients');
While zaehler < BenutzerListe.Lines.Count
Do Begin
name :=Gettoken(BenutzerListe.Lines[zaehler],'
#',2);
// IP Hohlen
TcpClient1.RemoteHost :=name;
// Ip des Ziel Clients.
try
TcpClient1.Connect;
// Versuche zu Konnekten
IF TcpClient1.Connected = True
then Begin //Wenn Konnektet dann Sende Nachricht
For i :=0
to Nachricht.Lines.Count -1
do
TcpClient1.Sendln('
m1#' + MeinBenutzerName + '
#' + nachricht.Lines[i]);
Zaehler:=Zaehler +1;
//---------Wenn der Client sich nicht Konnekten kann dann diesen Code---
End
Else Begin
BenutzerListe.Lines.Delete(zaehler);
// Fehlerhaften Client Löschen----
//---------Server Log gibt Nachricht über Fehlerhaften Client aus.------
ServerLog.Lines.Clear;
ServerLog.Lines.Add('
Server : Dieser Client konnte nicht erreicht werden : ' +
name);
ServerLog.Lines.Add('
Server : Der Client ' +
name + '
wurde Entfernt, um Fehler zu vermeiden.');
//----------Leerzeilen aus Benutzer Liste löschen-----------------------
For e:=0
to BenutzerListe.Lines.Count -1
Do Begin
IF BenutzerListe.Lines[e] = '
'
Then BenutzerListe.Lines.Delete(e);
//Leerzeilen Löschen
End;
zaehler:=0;
TcpClient1.Disconnect;
Und ein THtmlListbox wo die Nachricht plus Smileys dargestellt werden soll.
Evtl. noch ein TTreeview1, wo man die Smileys aussuchen kann.
Wie kann Ich es nun machen ?
Was Funktioniert ist z.b. Beim Klick auf ein Smiley : Memo1.Lines.Text := Memo1.Lines.Text + ('[img]idx:1[/img]');
Funktioniert sieht aber doof aus.
Hat jemand eine Idee wie man sowas eleganter Lösen kann
[edit=sakura]Tags aus der Überschrift entfernt und CODE- durch DELPHI Tags ersetzt.[/edit]