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 = ':D' then 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...