如何在 SynEdit 插入符号位置插入文本

How to insert text at caret position in SynEdit

Lazarus 版本的 SynEdit 有一个程序 SynEdit.InsertTextAtCaret('Text')。如何在带撤消支持的 Delphi 版 SynEdit 的插入符号处插入文本?

有手续

TCustomSynEdit.procedure InsertBlock(const BB, BE: TBufferCoord; ChangeStr: PWideChar; AddToUndoList: Boolean);

它插入 ChangeStr 将文本从 BB 位置更改为 BE 位置。 您可以将 BB 和 BE 设置为当前插入符号坐标,您将得到您想要的

例如

SynEdit1.InsertBlock(SynEdit1.CaretXY, SynEdit1.CaretXY, 'test', true);

您可以使用此代码:

SynEdit1.InsertTextAtCaret('text');