Es geht darum ein Wort das gesucht wird und gefunden wird in einem Memo Feld zu markieren. Der unten stehende Code funktioniert auch so wie ich es will. Warum geht die Umcodierung nicht automatisch ?
Code: Alles auswählen
begin
if Pos(UTF8Decode(Edit1.Text), UTF8Decode(Memo1.Text)) = 0 then exit;
Memo1.SetFocus;
Memo1.Selstart:= Pos(UTF8Decode(Edit1.Text), UTF8Decode(Memo1.Text)) -1;
Memo1.Sellength:= Length(UTF8Decode(Edit1.Text));
Label6.Caption:= 'Pos mit UTF: ' + IntToStr(Pos(UTF8Decode(Edit1.Text),UTF8Decode(Memo1.Text)));
Label7.Caption:= 'Pos ohne UTF: ' + IntToStr(Pos(Edit1.Text,Memo1.Text));
end;
Natürlich würde das ganze schöner aussehen (und wäre natürlich effizienter) wenn man die Eingabe erst in einen String schreibt, dann braucht man sie nur einmal umcodieren. Aber ich kann mich bei Delphi nicht daran erinnern, dass man überhaupt umcodieren musste, in so einem Fall.