delphi RichEdit 批量关键词变色  
官方Delphi 学习QQ群: 682628230(三千人)
频道

delphi RichEdit 批量关键词变色



Procedure MarkString(RichEdit:TRichEdit;strtomark : string);

Var

FoundAt,maxInt : integer;

begin


    FoundAt:=RichEdit.FindText(strtomark,0,maxInt,[stWholeWord]);

    while FoundAt <> -1 do

    begin

             RichEdit.SelStart := FoundAt;

             RichEdit.SelLength := Length(strtomark);

             RichEdit.SelAttributes.Style := [fsBold];

             RichEdit.SelAttributes.Color := clRed;

             RichEdit.SelText :=strtomark;

             FoundAt:=RichEdit.FindText(strtomark,FoundAt + length(strtomark),maxInt,[stWholeWord]);

    end;

end;



Procedure UnMarkString(RichEdit:TRichEdit;strtomark : string);

Var

FoundAt : integer;

begin

    FoundAt:=RichEdit.FindText(strtomark,0,maxInt,[stWholeWord]);

    while FoundAt <> -1 do

    begin

             RichEdit.SelStart := FoundAt;

             RichEdit.SelLength := Length(strtomark);

             RichEdit.SelAttributes.Style := [];

             RichEdit.SelAttributes.Color := clBlack;

             RichEdit.SelText :=strtomark;

             FoundAt:=RichEdit.FindText(strtomark,FoundAt + length(strtomark),maxInt,[stWholeWord]);

    end;

end;



推荐分享
图文皆来源于网络,内容仅做公益性分享,版权归原作者所有,如有侵权请告知删除!
 

Copyright © 2014 DelphiW.com 开发 源码 文档 技巧 All Rights Reserved
晋ICP备14006235号-8 晋公网安备 14108102000087号

执行时间: 0.036485910415649 seconds