Selber per
WinAPI auf das Richedit zugreifen und nicht über die Property/Methoden des TRichEdit
oder selber umrechnen.
Im Prinzip mußt du nur die Zeilen/Zeilenumbrüche vor der Position im Richedit zählen und dann diese Zahl nochmal auf die Position draufrechnen.
ZähleZeilenmbrüche(Start bis SelStart-1) = Offset für SelStart
ZähleZeilenmbrüche(SelStart bis SelStart+SelLength) = Offset für SelLength
Das ist für Position im im RichEdit auf Position Delphi-Text umrechnen.
Nur Andersrum ist es schwerer, also für Position Delphi-Text auf Position im im RichEdit umrechnen.
Da man dort vorausschauen rechnen muß. Wenn der berechnete Offset weitere Zeilenumbrüche trifft, muß man die ebenfalls wieder mit einberechnen usw.