Einzelnen Beitrag anzeigen

-Phantom-

Registriert seit: 26. Nov 2009
Ort: Bockhorst
319 Beiträge
 
Delphi 7 Enterprise
 
#1

String erkennen und mit Bild ersetzen

  Alt 3. Jul 2011, 15:45
Delphi-Version: 7
Hey Leute,

Ich scheibe wie so viele einen Chat. Ich bin nun bei einem Punkt wo das Programm z.B aus einem ": D" ein Smiley Bild machen soll. Ich hab es nun so halb hinbekommen aber auch nur sehr unelegant gelöst.
Delphi-Quellcode:
procedure Tchat.Smileyerkennen();
var
letzezeile, i : Integer;
duchstring,zeichen : String;
bild : Tbitmap;
begin
letzezeile := verlaufbox.Lines.Count-1;
duchstring := verlaufbox.Lines[letzezeile];
bild := tbitmap.Create;
imagelist1.GetBitmap(0,bild);
clipboard.Assign(bild);
bild.Free;
for i := 0 to length(duchstring) do begin
zeichen := duchstring[i]+duchstring[i+1];
if zeichen = ':Dthen begin
verlaufbox.SelStart := SendMessage(verlaufbox.Handle, EM_LINEINDEX, letzezeile, i) + i-1;
verlaufbox.PasteFromClipboard;
end
end;
Ver zeit mir die Namensgebung der Variablen, es ist noch ein Test Projekt...

Das Ergebnis sieht dann so aus, dass das Bild richtig eingefügt ist aber das ": D" immer noch da ist. Wenn ich nun mit "Stringreplace()" versuche das ": D" wegzukommen wird ja wieder die "changemethode" von der Verlaufbox ausgelöst und er findet kein Smiley mehr.

Hoffe ihr könnt mir helfen...
Mathias Jansen
  Mit Zitat antworten Zitat