Thema: Delphi Problem mit SelStart

Einzelnen Beitrag anzeigen

Hazebukelar

Registriert seit: 28. Sep 2009
Ort: Nähe Bodensee
22 Beiträge
 
#15

Re: Problem mit SelStart

  Alt 29. Jan 2010, 11:53
Vieleicht wäre ja auch ein Ansatz nur in der Suchroutine alle #10 aus dem Buffer zu entfernen in welchen
ich den Memotext übernehme?

Dann würden diese automatisch nicht mitgezählt werden und der Rückgabewert der Position des gefundenen
Searchstrings müsste passen und das TRichEdit müsste nicht manipuliert werden.

Meine Suchroutine wird so initialisert:

Delphi-Quellcode:
function SearchMemo(Memo: TCustomEdit;
                    const SearchString: String;
                    Options: TFindOptions): Boolean;
var
  Buffer, P: PChar;
  Size,X,Z: Integer;
begin
  Result := False;
  if (Length(SearchString) = 0) then Exit;
  Size:=Memo.GetTextLen;
  Inc(Size);
  if (Size=0) then Exit;
  Buffer:=StrAlloc(Size);
  try
    Memo.GetTextBuf(Buffer,Size); ---> // Hier müsste man irgendwie die #10 rausschmeissen -> weißt Du dafür eine gute Lösung?
    P:=SearchBuf(Buffer, Size, Memo.SelStart, Memo.SelLength, SearchString, Options);
    if P <> nil then
    begin
      Memo.SetFocus;
      Memo.SelStart:=P-Buffer; ---> // dann würde dieser Wert stimmen
      Memo.SelLength:=Length(SearchString);
      Memo.Repaint;
      Result:=True;
    end;
  finally
    StrDispose(Buffer);
  end;
end;
Bekomme ich die #10 irgendwie aus dem Buffer oder gar nicht erst rein (oder sitze ich auf dem Schlauch)?

Danke.
  Mit Zitat antworten Zitat