Code:
Procedure TForm1.ChatToHtml(memo:TMemo; Webbrowser:TWebBrowser);
var StringList:Tstringlist; text:string;
begin
Stringlist := TStringList.Create;
try
Stringlist.Text := memo.Lines.GetText;
Stringlist.Text := StringReplace(Stringlist.Text,':)','<img src=Emoticons/regular_smile.gif>',[rfReplaceAll, rfIgnoreCase]);
Stringlist.Text := StringReplace(Stringlist.Text,';)','<img src=Emoticons/wink_smile.gif>',[rfReplaceAll, rfIgnoreCase]);
Stringlist.Text := StringReplace(Stringlist.Text,':-)','<img src=Emoticons/regular_smile.gif>',[rfReplaceAll, rfIgnoreCase]);
Stringlist.Text := StringReplace(Stringlist.Text,';-)','<img src=Emoticons/wink_smile.gif>',[rfReplaceAll, rfIgnoreCase]);
Stringlist.Text := StringReplace(Stringlist.Text,':-O','<img src=Emoticons/omg_smile.gif>',[rfReplaceAll, rfIgnoreCase]);
Stringlist.Text := StringReplace(Stringlist.Text,':o','<img src=Emoticons/omg_smile.gif>',[rfReplaceAll, rfIgnoreCase]);
Stringlist.Text := StringReplace(Stringlist.Text,':-S','<img src=Emoticons/confused_smile.gif>',[rfReplaceAll, rfIgnoreCase]);
Stringlist.Text := StringReplace(Stringlist.Text,':S','<img src=Emoticons/confused_smile.gif>',[rfReplaceAll, rfIgnoreCase]);
Stringlist.Text := StringReplace(Stringlist.Text,':''(','<img src=Emoticons/cry_smile.gif>',[rfReplaceAll, rfIgnoreCase]);
Stringlist.Text := StringReplace(Stringlist.Text,'(H)','<img src=Emoticons/shades_smile.gif>',[rfReplaceAll, rfIgnoreCase]);
Stringlist.Text := StringReplace(Stringlist.Text,'(h)','<img src=Emoticons/shades_smile.gif>',[rfReplaceAll, rfIgnoreCase]);
Stringlist.Text := StringReplace(Stringlist.Text,'(a)','<img src=Emoticons/angel_smile.gif>',[rfReplaceAll, rfIgnoreCase]);
Stringlist.Text := StringReplace(Stringlist.Text,'(A)','<img src=Emoticons/angel_smile.gif>',[rfReplaceAll, rfIgnoreCase]);
Stringlist.Text := StringReplace(Stringlist.Text,':-#','<img src=Emoticons/47_47_smile.gif>',[rfReplaceAll, rfIgnoreCase]);
Stringlist.Text := StringReplace(Stringlist.Text,'8-|','<img src=Emoticons/49_49_smile.gif>',[rfReplaceAll, rfIgnoreCase]);
Stringlist.Text := StringReplace(Stringlist.Text,':-*','<img src=Emoticons/51_51_smile.gif>',[rfReplaceAll, rfIgnoreCase]);
Stringlist.Text := StringReplace(Stringlist.Text,':^)','<img src=Emoticons/71_71_smile.gif>',[rfReplaceAll, rfIgnoreCase]);
Stringlist.Text := StringReplace(Stringlist.Text,':-o)','<img src=Emoticons/74_74_smile.gif>',[rfReplaceAll, rfIgnoreCase]);
Stringlist.Text := StringReplace(Stringlist.Text,'|-)','<img src=Emoticons/77_77_smile.gif>',[rfReplaceAll, rfIgnoreCase]);
Stringlist.Text := StringReplace(Stringlist.Text,'(Y)','<img src=Emoticons/thumps_up.gif>',[rfReplaceAll, rfIgnoreCase]);
Stringlist.Text := StringReplace(Stringlist.Text,'(y)','<img src=Emoticons/thumps_up.gif>',[rfReplaceAll, rfIgnoreCase]);
Stringlist.Text := StringReplace(Stringlist.Text,'(B)','<img src=Emoticons/beer.gif>',[rfReplaceAll, rfIgnoreCase]);
Stringlist.Text := StringReplace(Stringlist.Text,'(b)','<img src=Emoticons/beer.gif>',[rfReplaceAll, rfIgnoreCase]);
Stringlist.Text := StringReplace(Stringlist.Text,'(X)','<img src=Emoticons/girl.gif>',[rfReplaceAll, rfIgnoreCase]);
Stringlist.Text := StringReplace(Stringlist.Text,'(x)','<img src=Emoticons/girl.gif>',[rfReplaceAll, rfIgnoreCase]);
Stringlist.Text := StringReplace(Stringlist.Text,'({)','<img src=Emoticons/guy_hug.gif>',[rfReplaceAll, rfIgnoreCase]);
Stringlist.Text := StringReplace(Stringlist.Text,':-[','<img src=Emoticons/bat.gif>',[rfReplaceAll, rfIgnoreCase]);
Stringlist.Text := StringReplace(Stringlist.Text,':[','<img src=Emoticons/bat.gif>',[rfReplaceAll, rfIgnoreCase]);
Stringlist.Text := StringReplace(Stringlist.Text,'(l)','<img src=Emoticons/heart.gif>',[rfReplaceAll, rfIgnoreCase]);
Stringlist.Text := StringReplace(Stringlist.Text,'(L)','<img src=Emoticons/heart.gif>',[rfReplaceAll, rfIgnoreCase]);
Stringlist.Text := StringReplace(Stringlist.Text,'(K)','<img src=Emoticons/kiss.gif>',[rfReplaceAll, rfIgnoreCase]);
Stringlist.Text := StringReplace(Stringlist.Text,'(k)','<img src=Emoticons/kiss.gif>',[rfReplaceAll, rfIgnoreCase]);
Stringlist.Text := StringReplace(Stringlist.Text,'(F)','<img src=Emoticons/rose.gif>',[rfReplaceAll, rfIgnoreCase]);
Stringlist.Text := StringReplace(Stringlist.Text,'(f)','<img src=Emoticons/rose.gif>',[rfReplaceAll, rfIgnoreCase]);
Stringlist.Text := StringReplace(Stringlist.Text,'(P)','<img src=Emoticons/camera.gif>',[rfReplaceAll, rfIgnoreCase]);
Stringlist.Text := StringReplace(Stringlist.Text,'(p)','<img src=Emoticons/camera.gif>',[rfReplaceAll, rfIgnoreCase]);
Stringlist.Text := StringReplace(Stringlist.Text,'(@)','<img src=Emoticons/cat.gif>',[rfReplaceAll, rfIgnoreCase]);
Stringlist.Text := StringReplace(Stringlist.Text,'(t)','<img src=Emoticons/phone.gif>',[rfReplaceAll, rfIgnoreCase]);
Stringlist.Text := StringReplace(Stringlist.Text,'(T)','<img src=Emoticons/phone.gif>',[rfReplaceAll, rfIgnoreCase]);
Stringlist.Text := StringReplace(Stringlist.Text,'(8)','<img src=Emoticons/note.gif>',[rfReplaceAll, rfIgnoreCase]);
Stringlist.Text := StringReplace(Stringlist.Text,'(*)','<img src=Emoticons/star.gif>',[rfReplaceAll, rfIgnoreCase]);
Stringlist.Text := StringReplace(Stringlist.Text,'(O)','<img src=Emoticons/clock.gif>',[rfReplaceAll, rfIgnoreCase]);
Stringlist.Text := StringReplace(Stringlist.Text,'(0)','<img src=Emoticons/clock.gif>',[rfReplaceAll, rfIgnoreCase]);
Stringlist.Text := StringReplace(Stringlist.Text,'(sn)','<img src=Emoticons/53_53.gif>',[rfReplaceAll, rfIgnoreCase]);
Stringlist.Text := StringReplace(Stringlist.Text,'(pl)','<img src=Emoticons/55_55.gif>',[rfReplaceAll, rfIgnoreCase]);
Stringlist.Text := StringReplace(Stringlist.Text,'(pi)','<img src=Emoticons/57_57.gif>',[rfReplaceAll, rfIgnoreCase]);
Stringlist.Text := StringReplace(Stringlist.Text,'(au)','<img src=Emoticons/59_59.gif>',[rfReplaceAll, rfIgnoreCase]);
Stringlist.Text := StringReplace(Stringlist.Text,'(um)','<img src=Emoticons/61_61.gif>',[rfReplaceAll, rfIgnoreCase]);
Stringlist.Text := StringReplace(Stringlist.Text,'(co)','<img src=Emoticons/63_63.gif>',[rfReplaceAll, rfIgnoreCase]);
Stringlist.Text := StringReplace(Stringlist.Text,'(st)','<img src=Emoticons/66_66.gif>',[rfReplaceAll, rfIgnoreCase]);
Stringlist.Text := StringReplace(Stringlist.Text,'(mo)','<img src=Emoticons/69_69.gif>',[rfReplaceAll, rfIgnoreCase]);
Stringlist.Text := StringReplace(Stringlist.Text,'(li)','<img src=Emoticons/73_73.gif>',[rfReplaceAll, rfIgnoreCase]);
Stringlist.Text := StringReplace(Stringlist.Text,'(mp)','<img src=Emoticons/64_64.gif>',[rfReplaceAll, rfIgnoreCase]);
Stringlist.Text := StringReplace(Stringlist.Text,'(ip)','<img src=Emoticons/62_62.gif>',[rfReplaceAll, rfIgnoreCase]);
Stringlist.Text := StringReplace(Stringlist.Text,'(ap)','<img src=Emoticons/60_60.gif>',[rfReplaceAll, rfIgnoreCase]);
Stringlist.Text := StringReplace(Stringlist.Text,'(so)','<img src=Emoticons/58_58.gif>',[rfReplaceAll, rfIgnoreCase]);
Stringlist.Text := StringReplace(Stringlist.Text,'(||)','<img src=Emoticons/56_56.gif>',[rfReplaceAll, rfIgnoreCase]);
Stringlist.Text := StringReplace(Stringlist.Text,'(bah)','<img src=Emoticons/70_70.gif>',[rfReplaceAll, rfIgnoreCase]);
Stringlist.Text := StringReplace(Stringlist.Text,'(M)','<img src=Emoticons/messenger.gif>',[rfReplaceAll, rfIgnoreCase]);
Stringlist.Text := StringReplace(Stringlist.Text,'(m)','<img src=Emoticons/messenger.gif>',[rfReplaceAll, rfIgnoreCase]);
Stringlist.Text := StringReplace(Stringlist.Text,'(E)','<img src=Emoticons/envelope.gif>',[rfReplaceAll, rfIgnoreCase]);
Stringlist.Text := StringReplace(Stringlist.Text,'(e)','<img src=Emoticons/envelope.gif>',[rfReplaceAll, rfIgnoreCase]);
Stringlist.Text := StringReplace(Stringlist.Text,'(S)','<img src=Emoticons/moon.gif>',[rfReplaceAll, rfIgnoreCase]);
Stringlist.Text := StringReplace(Stringlist.Text,'(I)','<img src=Emoticons/lightbulp.gif>',[rfReplaceAll, rfIgnoreCase]);
Stringlist.Text := StringReplace(Stringlist.Text,'(i)','<img src=Emoticons/lightbulp.gif>',[rfReplaceAll, rfIgnoreCase]);
Stringlist.Text := StringReplace(Stringlist.Text,'(&)','<img src=Emoticons/dog.gif>',[rfReplaceAll, rfIgnoreCase]);
Stringlist.Text := StringReplace(Stringlist.Text,'(~)','<img src=Emoticons/film.gif>',[rfReplaceAll, rfIgnoreCase]);
Stringlist.Text := StringReplace(Stringlist.Text,'(W)','<img src=Emoticons/wilted_rose.gif>',[rfReplaceAll, rfIgnoreCase]);
Stringlist.Text := StringReplace(Stringlist.Text,'(w)','<img src=Emoticons/wilted_rose.gif>',[rfReplaceAll, rfIgnoreCase]);
Stringlist.Text := StringReplace(Stringlist.Text,'(g)','<img src=Emoticons/present.gif>',[rfReplaceAll, rfIgnoreCase]);
Stringlist.Text := StringReplace(Stringlist.Text,'(G)','<img src=Emoticons/present.gif>',[rfReplaceAll, rfIgnoreCase]);
Stringlist.Text := StringReplace(Stringlist.Text,'(u)','<img src=Emoticons/broken_heart.gif>',[rfReplaceAll, rfIgnoreCase]);
Stringlist.Text := StringReplace(Stringlist.Text,'(U)','<img src=Emoticons/broken_heart.gif>',[rfReplaceAll, rfIgnoreCase]);
Stringlist.Text := StringReplace(Stringlist.Text,'(^)','<img src=Emoticons/cake.gif>',[rfReplaceAll, rfIgnoreCase]);
Stringlist.Text := StringReplace(Stringlist.Text,'(})','<img src=Emoticons/girl_hug.gif>',[rfReplaceAll, rfIgnoreCase]);
Stringlist.Text := StringReplace(Stringlist.Text,'(z)','<img src=Emoticons/guy.gif>',[rfReplaceAll, rfIgnoreCase]);
Stringlist.Text := StringReplace(Stringlist.Text,'(Z)','<img src=Emoticons/guy.gif>',[rfReplaceAll, rfIgnoreCase]);
Stringlist.Text := StringReplace(Stringlist.Text,'(D)','<img src=Emoticons/martini.gif>',[rfReplaceAll, rfIgnoreCase]);
Stringlist.Text := StringReplace(Stringlist.Text,'(d)','<img src=Emoticons/martini.gif>',[rfReplaceAll, rfIgnoreCase]);
Stringlist.Text := StringReplace(Stringlist.Text,'(N)','<img src=Emoticons/thumbs_down.gif>',[rfReplaceAll, rfIgnoreCase]);
Stringlist.Text := StringReplace(Stringlist.Text,'(n)','<img src=Emoticons/thumbs_down.gif>',[rfReplaceAll, rfIgnoreCase]);
Stringlist.Text := StringReplace(Stringlist.Text,'(C)','<img src=Emoticons/coffee.gif>',[rfReplaceAll, rfIgnoreCase]);
Stringlist.Text := StringReplace(Stringlist.Text,'(c)','<img src=Emoticons/coffee.gif>',[rfReplaceAll, rfIgnoreCase]);
Stringlist.Text := StringReplace(Stringlist.Text,'8-)','<img src=Emoticons/75_75.gif>',[rfReplaceAll, rfIgnoreCase]);
Stringlist.Text := StringReplace(Stringlist.Text,'*-)','<img src=Emoticons/72_72.gif>',[rfReplaceAll, rfIgnoreCase]);
Stringlist.Text := StringReplace(Stringlist.Text,'+o(','<img src=Emoticons/52_52.gif>',[rfReplaceAll, rfIgnoreCase]);
Stringlist.Text := StringReplace(Stringlist.Text,'^o)','<img src=Emoticons/50_50.gif>',[rfReplaceAll, rfIgnoreCase]);
Stringlist.Text := StringReplace(Stringlist.Text,'8o|','<img src=Emoticons/48_48.gif>',[rfReplaceAll, rfIgnoreCase]);
Stringlist.Text := StringReplace(Stringlist.Text,'(6)','<img src=Emoticons/devil.gif>',[rfReplaceAll, rfIgnoreCase]);
Stringlist.Text := StringReplace(Stringlist.Text,':-@','<img src=Emoticons/angry.gif>',[rfReplaceAll, rfIgnoreCase]);
Stringlist.Text := StringReplace(Stringlist.Text,':@','<img src=Emoticons/angry.gif>',[rfReplaceAll, rfIgnoreCase]);
Stringlist.Text := StringReplace(Stringlist.Text,':-$','<img src=Emoticons/red.gif>',[rfReplaceAll, rfIgnoreCase]);
Stringlist.Text := StringReplace(Stringlist.Text,':$','<img src=Emoticons/red.gif>',[rfReplaceAll, rfIgnoreCase]);
Stringlist.Text := StringReplace(Stringlist.Text,':-|','<img src=Emoticons/what.gif>',[rfReplaceAll, rfIgnoreCase]);
Stringlist.Text := StringReplace(Stringlist.Text,':|','<img src=Emoticons/what.gif>',[rfReplaceAll, rfIgnoreCase]);
Stringlist.Text := StringReplace(Stringlist.Text,':-(','<img src=Emoticons/sad.gif>',[rfReplaceAll, rfIgnoreCase]);
Stringlist.Text := StringReplace(Stringlist.Text,':(','<img src=Emoticons/sad.gif>',[rfReplaceAll, rfIgnoreCase]);
Stringlist.Text := StringReplace(Stringlist.Text,':-P','<img src=Emoticons/tong.gif>',[rfReplaceAll, rfIgnoreCase]);
Stringlist.Text := StringReplace(Stringlist.Text,':P','<img src=Emoticons/tong.gif>',[rfReplaceAll, rfIgnoreCase]);
Stringlist.Text := StringReplace(Stringlist.Text,':-D','<img src=Emoticons/teeth.gif>',[rfReplaceAll, rfIgnoreCase]);
Stringlist.Text := StringReplace(Stringlist.Text,':D','<img src=Emoticons/teeth.gif>',[rfReplaceAll, rfIgnoreCase]);
// Alle emoticon codes worden in een stringlist vervangen door een HTML ImgSrc code overeenkomstig met de gifjes. :)
Stringlist.Add('</html>');
// HTMLCode sluiten.
Stringlist.SaveToFile('Chat.html');
//Opslaan als HTMLFile.
finally
Stringlist.Free;
End;
WebBrowser.Navigate(ExtractFilePath(Application.ExeName)+'Chat.html');
//De Webbrowser het zojuist opgeslagen Html bestand laten navigeren.
end;
En om het in je ChatForm aan te roepen het volgende:
Bookmarks