QMacros 2017年9月18日提交的版本支持了迭代器,以重复替换某一部分内容。 迭代器的声明:
1 2 3 4 5 6 7 8 9 10 11 12 13 |
IQMacroIterator = interface ['{3DB5D84F-0539-4C10-9476-E6B71D3099DE}'] // 开始替换 procedure BeginReplace(AMacro: TQMacroItem); // 判断是否还有要处理的数据 function HasNext: Boolean; // 执行一次替换 function Replace: QStringW; // 结束替换 procedure EndReplace; // 获取当前活动的迭代器序号 function GetItemIndex: Integer; end; |
好吧,这是一个接口,这就意味着,我们绑定某个宏到这个迭代器之前,需要先实现一个迭代器。我们可以继承自 TQMacroIterator 实现一个自带的迭代