我正在为Embarcadero C++ Builder IDE编写扩展,并希望以编程方式在代码编辑器中的光标位置插入文本。我搜索了Tools API头文件,但只找到一个界面,该界面允许我在编辑器的开头插入文本。
有没有允许我在指定位置插入文本的接口(interface)或功能?如果是这样,您能给我提供一个代码示例吗?
我正在用C++编写扩展,但是Delphi中的代码示例也可以。
最佳答案
根据Bruno Fierens的这份文件Extending the Delphi IDE:
var
EditorServices: IOTAEditorServices;
EditView: IOTAEditView;
copyright: string;
begin
copyright := '{ Copyright © 2011 by tmssoftware.com }';
EditorServices := BorlandIDEServices as IOTAEditorServices;
EditView := EditorServices.TopView;
if Assigned(EditView) then
begin
// position cursor at 1,1
EditView.Buffer.EditPosition.Move(1,1);
// insert copyright notice on top
EditView.Buffer.EditPosition.InsertText(copyright);
end;
end;
使用
EditView.Buffer.EditPosition.Move()
,您应该可以将光标自由移动到任何位置。关于c++ - 在Embarcadero Tools API中的光标位置插入文本,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/37385488/