Mega Code Archive

 
Categories / Delphi / Strings
 

How to Insert a string at caret point (memo)

Title: How to Insert a string at caret point (memo) procedure TForm1.InsertText(str: string; Amemo: TMemo); var Str1: string; i, ui: Integer; begin ui := Length(Amemo.Lines[Amemo.CaretPos.y]); str1 := Amemo.Lines[Amemo.CaretPos.y]; if Pos('', str) 0 then begin i := Pos('', str); str := StringReplace(str, '', '', [rfReplaceAll, rfIgnoreCase]); i := i - 1 + ui; end else i := -30; Insert(str, Str1, Amemo.CaretPos.x + 1); Amemo.Lines[Amemo.CaretPos.y] := str1; if i -30 then begin Amemo.SelStart := Amemo.Perform(EM_LINEINDEX, Amemo.CaretPos.y, 0) + i; Amemo.SetFocus; end; end;