Naja TWebBrowser gibts doch nicht als Edit-Feld, wo der User selbst eingaben machen kann oder doch?
Außerdem bin ich nun mit JvRichView recht zufrieden...
Nur ein Problem gibts noch...
Ich versuche bei OnChange im Text Smilies zu suchen... nur leider wird dadurch bei der Eingabe nach jedem Zeichen die aktuelle Position an den Anfang gesetzt, sodass Text quasi rückwärts eingegeben wird... weiß gar nich wodurch...
habs auch schon mit
Delphi-Quellcode:
ItemNo := RichEdit2.ItemCount-1;
Offs := RichEdit2.GetOffsBeforeItem(ItemNo);
RichEdit2.SetSelectionBounds(ItemNo,Offs,ItemNo,Offs);
versucht aber klappt irgendwie nicht...
Hier mal die Prozedur zum finden der Smilies...
Smilies ist ein Array mit jeweils (smiliecode:smiliebild:smiliecode:smiliebild:...)
Delphi-Quellcode:
procedure TForm4.SmiliesFinden(Var RichEdit2:TRichViewEdit; movetoend:boolean);
var
a, ItemNo, Offs: LongInt;
Smiley:string;
geaendert:boolean;
gif: TGifImage;
begin
RichEdit2.Format;
a:=0;
While a < Length(Form5.smilies) Do Begin
Repeat
geaendert:=false;
if movetoend=true Then Begin
ItemNo := RichEdit2.ItemCount-1;
Offs := RichEdit2.GetOffsBeforeItem(ItemNo);
RichEdit2.SetSelectionBounds(ItemNo,Offs,ItemNo,Offs);
End;
if RichEdit2.SearchText(':'+Form5.smilies[a], [rvseoWholeWord])=true Then Begin
// showMessage('asd');
gif := TGifImage.Create;
gif.LoadFromFile('./smilies/'+Form5.smilies[(a+1)]);
RichEdit2.InsertPicture(':'+Form5.smilies[a], gif, rvvaBaseLine);
geaendert:=true;
End;
RichEdit2.Format;
Until geaendert=false;
// RichEdit2.ReFormat;
a:=a+2;
ItemNo := RichEdit2.ItemCount-1;
Offs := RichEdit2.GetOffsBeforeItem(ItemNo);
RichEdit2.SetSelectionBounds(ItemNo,Offs,ItemNo,Offs);
End;
end;
Ich bleib dran und versuch etwas herauszufinden, aber vllt ist hier ja ein geübtes Auge schneller als ich
Gruß Joschi