{"id":134,"date":"2005-08-11T09:45:12","date_gmt":"2005-08-11T01:45:12","guid":{"rendered":"http:\/\/www.2lin.net\/?p=45"},"modified":"2005-08-11T09:45:12","modified_gmt":"2005-08-11T01:45:12","slug":"45","status":"publish","type":"post","link":"https:\/\/www.2lin.top\/?p=134","title":{"rendered":"\u5728 RichEdit \u4e2d\u5b9e\u73b0\u4ee3\u7801\u7740\u8272"},"content":{"rendered":"<p>\u4e0b\u9762\u7684\u4ee3\u7801\u5c06\u4ee5\u6307\u5b9a\u989c\u8272\u5bf9\u4e00\u4e9b\u6307\u5b9a\u5355\u8bcd\u7740\u8272\uff0c\u5c31\u8c61delphi\u4e2d\u7684\u4ee3\u7801\u7f16\u8f91\u5668\u90a3\u6837\u3002&nbsp; <\/p>\n<\/p>\n<pre class=\"brush:delphi;toolbar:false\">procedure&nbsp;CodeColors(Form&nbsp;:&nbsp;TForm;Style&nbsp;:&nbsp;String;&nbsp;RichE&nbsp;:&nbsp;TRichedit;&nbsp;\n&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;InVisible&nbsp;:&nbsp;Boolean);&nbsp;&nbsp;\nconst&nbsp;&nbsp;\n&nbsp;&nbsp;\/\/&nbsp;\u7b26\u53f7...&nbsp;&nbsp;\n&nbsp;&nbsp;CodeC1:&nbsp;array[0..20]&nbsp;of&nbsp;String&nbsp;=&nbsp;(&#39;#&#39;,&#39;$&#39;,&#39;(&#39;,&#39;)&#39;,&#39;*&#39;,&#39;,&#39;,&nbsp;&nbsp;\n&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&#39;.&#39;,&#39;\/&#39;,&#39;:&#39;,&#39;;&#39;,&#39;[&#39;,&#39;]&#39;,&#39;{&#39;,&#39;}&#39;,&#39;&lt;&#39;,&#39;&gt;&#39;,&nbsp;\n\u4e0b\u9762\u7684\u4ee3\u7801\u5c06\u4ee5\u6307\u5b9a\u989c\u8272\u5bf9\u4e00\u4e9b\u6307\u5b9a\u5355\u8bcd\u7740\u8272\uff0c\u5c31\u8c61delphi\u4e2d\u7684\u4ee3\u7801\u7f16\u8f91\u5668\u90a3\u6837\u3002&nbsp;&nbsp;\nprocedure&nbsp;CodeColors(Form&nbsp;:&nbsp;TForm;Style&nbsp;:&nbsp;String;&nbsp;RichE&nbsp;:&nbsp;TRichedit;&nbsp;\n&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;InVisible&nbsp;:&nbsp;Boolean);&nbsp;&nbsp;\nconst&nbsp;&nbsp;\n&nbsp;&nbsp;\/\/&nbsp;\u7b26\u53f7...&nbsp;&nbsp;\n&nbsp;&nbsp;CodeC1:&nbsp;array[0..20]&nbsp;of&nbsp;String&nbsp;=&nbsp;(&#39;#&#39;,&#39;$&#39;,&#39;(&#39;,&#39;)&#39;,&#39;*&#39;,&#39;,&#39;,&nbsp;&nbsp;\n&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&#39;.&#39;,&#39;\/&#39;,&#39;:&#39;,&#39;;&#39;,&#39;[&#39;,&#39;]&#39;,&#39;{&#39;,&#39;}&#39;,&#39;&lt;&#39;,&#39;&gt;&#39;,&nbsp;&nbsp;\n&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&#39;-&#39;,&#39;=&#39;,&#39;+&#39;,&#39;&#39;&#39;&#39;,&#39;@&#39;);&nbsp;&nbsp;\n&nbsp;&nbsp;\/\/&nbsp;\u4fdd\u7559\u5b57...&nbsp;&nbsp;\n&nbsp;&nbsp;CodeC2:&nbsp;array[0..44]&nbsp;of&nbsp;String&nbsp;=&nbsp;(&#39;and&#39;,&#39;as&#39;,&#39;begin&#39;,&nbsp;&nbsp;\n&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&#39;case&#39;,&#39;char&#39;,&#39;class&#39;,&#39;const&#39;,&#39;downto&#39;,&nbsp;&nbsp;\n&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&#39;else&#39;,&#39;end&#39;,&#39;except&#39;,&#39;finally&#39;,&#39;for&#39;,&nbsp;&nbsp;\n&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&#39;forward&#39;,&#39;function&#39;,&#39;if&#39;,&#39;implementation&#39;,&#39;interface&#39;,&nbsp;&nbsp;\n&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&#39;is&#39;,&#39;nil&#39;,&#39;or&#39;,&#39;private&#39;,&#39;procedure&#39;,&#39;public&#39;,&#39;raise&#39;,&nbsp;&nbsp;\n&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&#39;repeat&#39;,&#39;string&#39;,&#39;to&#39;,&#39;try&#39;,&#39;type&#39;,&#39;unit&#39;,&#39;uses&#39;,&#39;var&#39;,&nbsp;&nbsp;\n&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&#39;while&#39;,&#39;external&#39;,&#39;stdcall&#39;,&#39;do&#39;,&#39;until&#39;,&#39;array&#39;,&#39;of&#39;,&nbsp;&nbsp;\n&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&#39;in&#39;,&#39;shr&#39;,&#39;shl&#39;,&#39;cos&#39;,&#39;div&#39;);&nbsp;&nbsp;\nvar&nbsp;&nbsp;\n&nbsp;&nbsp;FoundAt&nbsp;:&nbsp;LongInt;&nbsp;&nbsp;\n&nbsp;&nbsp;StartPos,&nbsp;ToEnd,&nbsp;i&nbsp;:&nbsp;integer;&nbsp;&nbsp;\n&nbsp;&nbsp;OldCap,T&nbsp;:&nbsp;String;&nbsp;&nbsp;\n&nbsp;&nbsp;FontC,&nbsp;BackC,&nbsp;C1,&nbsp;C2&nbsp;,C3&nbsp;,strC,&nbsp;strC1&nbsp;:&nbsp;TColor;&nbsp;&nbsp;\nbegin&nbsp;&nbsp;\n&nbsp;&nbsp;OldCap&nbsp;:=&nbsp;Form.Caption;&nbsp;&nbsp;\n&nbsp;&nbsp;with&nbsp;RichE&nbsp;do&nbsp;&nbsp;\n&nbsp;&nbsp;begin&nbsp;&nbsp;\n&nbsp;&nbsp;&nbsp;&nbsp;Font.Name&nbsp;:=&nbsp;&#39;Courier&nbsp;New&#39;;&nbsp;&nbsp;\n&nbsp;&nbsp;&nbsp;&nbsp;Font.Size&nbsp;:=&nbsp;10;&nbsp;&nbsp;\n&nbsp;&nbsp;&nbsp;&nbsp;if&nbsp;WordWrap&nbsp;then&nbsp;WordWrap&nbsp;:=&nbsp;false;&nbsp;&nbsp;\n&nbsp;&nbsp;&nbsp;&nbsp;SelectAll;&nbsp;&nbsp;\n&nbsp;&nbsp;&nbsp;&nbsp;SelAttributes.color&nbsp;:=&nbsp;clBlack;&nbsp;&nbsp;\n&nbsp;&nbsp;&nbsp;&nbsp;SelAttributes.Style&nbsp;:=&nbsp;[];&nbsp;&nbsp;\n&nbsp;&nbsp;&nbsp;&nbsp;SelStart&nbsp;:=&nbsp;0;&nbsp;&nbsp;\n&nbsp;&nbsp;&nbsp;&nbsp;if&nbsp;InVisible&nbsp;then&nbsp;&nbsp;\n&nbsp;&nbsp;&nbsp;&nbsp;begin&nbsp;&nbsp;\n&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Visible&nbsp;:=&nbsp;False;&nbsp;&nbsp;\n&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Form.Caption&nbsp;:=&nbsp;&#39;Executing&nbsp;Code&nbsp;Coloring...&#39;;&nbsp;&nbsp;\n&nbsp;&nbsp;&nbsp;&nbsp;end;&nbsp;&nbsp;\n&nbsp;&nbsp;end;&nbsp;&nbsp;\n&nbsp;&nbsp;BackC&nbsp;:=&nbsp;clWhite;&nbsp;FontC&nbsp;:=&nbsp;clBlack;&nbsp;&nbsp;\n&nbsp;&nbsp;C1&nbsp;:=&nbsp;clBlack;&nbsp;C2&nbsp;:=&nbsp;clBlack;&nbsp;C3&nbsp;:=&nbsp;clBlack;&nbsp;&nbsp;\n&nbsp;&nbsp;strC&nbsp;:=&nbsp;clBlue;&nbsp;strC1&nbsp;:=&nbsp;clSilver;&nbsp;&nbsp;\n&nbsp;&nbsp;if&nbsp;Style&nbsp;=&nbsp;&#39;Twilight&#39;&nbsp;then&nbsp;&nbsp;\n&nbsp;&nbsp;begin&nbsp;&nbsp;\n&nbsp;&nbsp;&nbsp;&nbsp;BackC&nbsp;:=&nbsp;clBlack;&nbsp;FontC&nbsp;:=&nbsp;clWhite;&nbsp;&nbsp;\n&nbsp;&nbsp;&nbsp;&nbsp;C1&nbsp;:=&nbsp;clLime;&nbsp;C2&nbsp;:=&nbsp;clSilver;&nbsp;C3&nbsp;:=&nbsp;clAqua;&nbsp;&nbsp;\n&nbsp;&nbsp;&nbsp;&nbsp;strC&nbsp;:=&nbsp;clYellow;&nbsp;strC1&nbsp;:=&nbsp;clRed;&nbsp;&nbsp;\n&nbsp;&nbsp;end&nbsp;&nbsp;\n&nbsp;&nbsp;else&nbsp;&nbsp;\n&nbsp;&nbsp;if&nbsp;Style&nbsp;=&nbsp;&#39;Default&#39;&nbsp;then&nbsp;&nbsp;\n&nbsp;&nbsp;begin&nbsp;&nbsp;\n&nbsp;&nbsp;&nbsp;&nbsp;BackC&nbsp;:=&nbsp;clWhite;&nbsp;FontC&nbsp;:=&nbsp;clBlack;&nbsp;&nbsp;\n&nbsp;&nbsp;&nbsp;&nbsp;C1&nbsp;:=&nbsp;clTeal;&nbsp;C2&nbsp;:=&nbsp;clMaroon;&nbsp;C3&nbsp;:=&nbsp;clBlue;&nbsp;&nbsp;\n&nbsp;&nbsp;&nbsp;&nbsp;strC&nbsp;:=&nbsp;clMaroon;&nbsp;strC1&nbsp;:=&nbsp;clSilver;&nbsp;&nbsp;\n&nbsp;&nbsp;end&nbsp;&nbsp;\n&nbsp;&nbsp;else&nbsp;&nbsp;\n&nbsp;&nbsp;if&nbsp;Style&nbsp;=&nbsp;&#39;Ocean&#39;&nbsp;then&nbsp;&nbsp;\n&nbsp;&nbsp;begin&nbsp;&nbsp;\n&nbsp;&nbsp;&nbsp;&nbsp;BackC&nbsp;:=&nbsp;$00FFFF80;&nbsp;FontC&nbsp;:=&nbsp;clBlack;&nbsp;&nbsp;\n&nbsp;&nbsp;&nbsp;&nbsp;C1&nbsp;:=&nbsp;clMaroon;&nbsp;C2&nbsp;:=&nbsp;clBlack;&nbsp;C3&nbsp;:=&nbsp;clBlue;&nbsp;&nbsp;\n&nbsp;&nbsp;&nbsp;&nbsp;strC&nbsp;:=&nbsp;clTeal;&nbsp;strC1&nbsp;:=&nbsp;clBlack;&nbsp;&nbsp;\n&nbsp;&nbsp;end&nbsp;&nbsp;\n&nbsp;&nbsp;else&nbsp;&nbsp;\n&nbsp;&nbsp;if&nbsp;Style&nbsp;=&nbsp;&#39;Classic&#39;&nbsp;then&nbsp;&nbsp;\n&nbsp;&nbsp;begin&nbsp;&nbsp;\n&nbsp;&nbsp;&nbsp;&nbsp;BackC&nbsp;:=&nbsp;clNavy;&nbsp;FontC&nbsp;:=&nbsp;clYellow;&nbsp;&nbsp;\n&nbsp;&nbsp;&nbsp;&nbsp;C1&nbsp;:=&nbsp;clLime;&nbsp;C2&nbsp;:=&nbsp;clSilver;&nbsp;C3&nbsp;:=&nbsp;clWhite;&nbsp;&nbsp;\n&nbsp;&nbsp;&nbsp;&nbsp;strC&nbsp;:=&nbsp;clAqua;&nbsp;strC1&nbsp;:=&nbsp;clSilver;&nbsp;&nbsp;\n&nbsp;&nbsp;end&nbsp;&nbsp;\n&nbsp;&nbsp;else&nbsp;&nbsp;\n&nbsp;&nbsp;begin&nbsp;&nbsp;\n&nbsp;&nbsp;&nbsp;&nbsp;with&nbsp;RichE&nbsp;do&nbsp;&nbsp;\n&nbsp;&nbsp;&nbsp;&nbsp;begin&nbsp;&nbsp;\n&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;T&nbsp;:=&nbsp;&#39;{&#39;+Style+&#39;&nbsp;=&nbsp;Invalid&nbsp;Style&nbsp;[Default,Classic,Twilight,Ocean]&nbsp;ONLY!&nbsp;}&#39;;&nbsp;&nbsp;\n&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Lines.Insert(0,T);&nbsp;&nbsp;\n&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;StartPos&nbsp;:=&nbsp;0;&nbsp;&nbsp;\n&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;ToEnd&nbsp;:=&nbsp;Length(Text)&nbsp;-&nbsp;StartPos;&nbsp;&nbsp;\n&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;FoundAt&nbsp;:=&nbsp;FindText(T,&nbsp;StartPos,&nbsp;ToEnd,&nbsp;[stWholeWord]);&nbsp;&nbsp;\n&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;SelStart&nbsp;:=&nbsp;FoundAt;&nbsp;&nbsp;\n&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;SelLength&nbsp;:=&nbsp;Length(T);&nbsp;&nbsp;\n&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;SelAttributes.Color&nbsp;:=&nbsp;clRed;&nbsp;&nbsp;\n&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;SelAttributes.Style&nbsp;:=&nbsp;[fsBold];&nbsp;&nbsp;\n&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;StartPos&nbsp;:=&nbsp;0;&nbsp;&nbsp;\n&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;ToEnd&nbsp;:=&nbsp;Length(Text)&nbsp;-&nbsp;StartPos;&nbsp;&nbsp;\n&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;FoundAt&nbsp;:=&nbsp;FindText(&#39;ONLY!&#39;,&nbsp;StartPos,&nbsp;ToEnd,&nbsp;[stWholeWord]);&nbsp;&nbsp;\n&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;SelStart&nbsp;:=&nbsp;FoundAt;&nbsp;&nbsp;\n&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;SelLength&nbsp;:=&nbsp;4;&nbsp;&nbsp;\n&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;SelAttributes.Color&nbsp;:=&nbsp;clRed;&nbsp;&nbsp;\n&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;SelAttributes.Style&nbsp;:=&nbsp;[fsBold,fsUnderLine];&nbsp;&nbsp;\n&nbsp;&nbsp;&nbsp;&nbsp;end;&nbsp;&nbsp;\n&nbsp;&nbsp;end;&nbsp;&nbsp;\n&nbsp;&nbsp;RichE.SelectAll;&nbsp;&nbsp;\n&nbsp;&nbsp;RichE.color&nbsp;:=&nbsp;BackC;&nbsp;&nbsp;\n&nbsp;&nbsp;RichE.SelAttributes.color&nbsp;:=&nbsp;FontC;&nbsp;&nbsp;\n&nbsp;&nbsp;for&nbsp;i&nbsp;:=&nbsp;0&nbsp;to&nbsp;100&nbsp;do&nbsp;&nbsp;\n&nbsp;&nbsp;begin&nbsp;&nbsp;\n&nbsp;&nbsp;&nbsp;&nbsp;with&nbsp;RichE&nbsp;do&nbsp;&nbsp;\n&nbsp;&nbsp;&nbsp;&nbsp;begin&nbsp;&nbsp;\n&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;StartPos&nbsp;:=&nbsp;0;&nbsp;&nbsp;\n&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;ToEnd&nbsp;:=&nbsp;Length(Text)&nbsp;-&nbsp;StartPos;&nbsp;&nbsp;\n&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;FoundAt&nbsp;:=&nbsp;FindText(IntToStr(i),&nbsp;StartPos,&nbsp;ToEnd,&nbsp;[stWholeWord]);&nbsp;&nbsp;\n&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;while&nbsp;(FoundAt&nbsp;&lt;&gt;&nbsp;-1)&nbsp;do&nbsp;&nbsp;\n&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;begin&nbsp;&nbsp;\n&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;SelStart&nbsp;:=&nbsp;FoundAt;&nbsp;&nbsp;\n&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;SelLength&nbsp;:=&nbsp;Length(IntToStr(i));&nbsp;&nbsp;\n&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;SelAttributes.Color&nbsp;:=&nbsp;C1;&nbsp;&nbsp;\n&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;SelAttributes.Style&nbsp;:=&nbsp;[];&nbsp;&nbsp;\n&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;StartPos&nbsp;:=&nbsp;FoundAt&nbsp;+&nbsp;Length(IntToStr(i));&nbsp;&nbsp;\n&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;FoundAt&nbsp;:=&nbsp;FindText(IntToStr(i),&nbsp;StartPos,&nbsp;ToEnd,&nbsp;[stWholeWord]);&nbsp;&nbsp;\n&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;end;&nbsp;&nbsp;\n&nbsp;&nbsp;&nbsp;&nbsp;end;&nbsp;&nbsp;\n&nbsp;&nbsp;end;&nbsp;&nbsp;\n&nbsp;&nbsp;for&nbsp;i&nbsp;:=&nbsp;0&nbsp;to&nbsp;20&nbsp;do&nbsp;&nbsp;\n&nbsp;&nbsp;begin&nbsp;&nbsp;\n&nbsp;&nbsp;&nbsp;&nbsp;with&nbsp;RichE&nbsp;do&nbsp;&nbsp;\n&nbsp;&nbsp;&nbsp;&nbsp;begin&nbsp;&nbsp;\n&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;StartPos&nbsp;:=&nbsp;0;&nbsp;&nbsp;\n&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;ToEnd&nbsp;:=&nbsp;Length(Text)&nbsp;-&nbsp;StartPos;&nbsp;&nbsp;\n&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;FoundAt&nbsp;:=&nbsp;FindText(CodeC1,&nbsp;StartPos,&nbsp;ToEnd,&nbsp;[]);&nbsp;&nbsp;\n&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;while&nbsp;(FoundAt&nbsp;&lt;&gt;&nbsp;-1)&nbsp;do&nbsp;&nbsp;\n&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;begin&nbsp;&nbsp;\n&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;SelStart&nbsp;:=&nbsp;FoundAt;&nbsp;&nbsp;\n&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;SelLength&nbsp;:=&nbsp;Length(CodeC1);&nbsp;&nbsp;\n&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;SelAttributes.Color&nbsp;:=&nbsp;C2;&nbsp;&nbsp;\n&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;StartPos&nbsp;:=&nbsp;FoundAt&nbsp;+&nbsp;Length(CodeC1);&nbsp;&nbsp;\n&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;FoundAt&nbsp;:=&nbsp;FindText(CodeC1,&nbsp;StartPos,&nbsp;ToEnd,&nbsp;[]);&nbsp;&nbsp;\n&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;end;&nbsp;&nbsp;\n&nbsp;&nbsp;&nbsp;&nbsp;end;&nbsp;&nbsp;\n&nbsp;&nbsp;end;&nbsp;&nbsp;\n&nbsp;&nbsp;for&nbsp;i&nbsp;:=&nbsp;0&nbsp;to&nbsp;44&nbsp;do&nbsp;&nbsp;\n&nbsp;&nbsp;begin&nbsp;&nbsp;\n&nbsp;&nbsp;&nbsp;&nbsp;with&nbsp;RichE&nbsp;do&nbsp;&nbsp;\n&nbsp;&nbsp;&nbsp;&nbsp;begin&nbsp;&nbsp;\n&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;StartPos&nbsp;:=&nbsp;0;&nbsp;&nbsp;\n&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;ToEnd&nbsp;:=&nbsp;Length(Text)&nbsp;-&nbsp;StartPos;&nbsp;&nbsp;\n&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;FoundAt&nbsp;:=&nbsp;FindText(CodeC2,&nbsp;StartPos,&nbsp;ToEnd,&nbsp;[stWholeWord]);&nbsp;&nbsp;\n&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;while&nbsp;(FoundAt&nbsp;&lt;&gt;&nbsp;-1)&nbsp;do&nbsp;&nbsp;\n&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;begin&nbsp;&nbsp;\n&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;SelStart&nbsp;:=&nbsp;FoundAt;&nbsp;&nbsp;\n&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;SelLength&nbsp;:=&nbsp;Length(CodeC2);&nbsp;&nbsp;\n&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;SelAttributes.Color&nbsp;:=&nbsp;C3;&nbsp;&nbsp;\n&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;SelAttributes.Style&nbsp;:=&nbsp;[fsBold];&nbsp;&nbsp;\n&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;StartPos&nbsp;:=&nbsp;FoundAt&nbsp;+&nbsp;Length(CodeC2);&nbsp;&nbsp;\n&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;FoundAt&nbsp;:=&nbsp;FindText(CodeC2,&nbsp;StartPos,&nbsp;ToEnd,&nbsp;[stWholeWord]);&nbsp;&nbsp;\n&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;end;&nbsp;&nbsp;\n&nbsp;&nbsp;&nbsp;&nbsp;end;&nbsp;&nbsp;\n&nbsp;&nbsp;end;&nbsp;&nbsp;\n&nbsp;&nbsp;Startpos&nbsp;:=&nbsp;0;&nbsp;&nbsp;\n&nbsp;&nbsp;with&nbsp;RichE&nbsp;do&nbsp;&nbsp;\n&nbsp;&nbsp;begin&nbsp;&nbsp;\n&nbsp;&nbsp;&nbsp;&nbsp;FoundAt&nbsp;:=&nbsp;FindText(&#39;&#39;&#39;&#39;,&nbsp;StartPos,&nbsp;Length(Text),&nbsp;[]);&nbsp;&nbsp;\n&nbsp;&nbsp;&nbsp;&nbsp;while&nbsp;FoundAt&nbsp;&lt;&gt;&nbsp;-1&nbsp;do&nbsp;&nbsp;\n&nbsp;&nbsp;&nbsp;&nbsp;begin&nbsp;&nbsp;\n&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;SelStart&nbsp;:=&nbsp;FoundAt;&nbsp;&nbsp;\n&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Startpos&nbsp;:=&nbsp;FoundAt+1;&nbsp;&nbsp;\n&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;FoundAt&nbsp;:=&nbsp;FindText(&#39;&#39;&#39;&#39;,&nbsp;StartPos,&nbsp;Length(Text),&nbsp;[]);&nbsp;&nbsp;\n&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if&nbsp;FoundAt&nbsp;&lt;&gt;&nbsp;-1&nbsp;then&nbsp;&nbsp;\n&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;begin&nbsp;&nbsp;\n&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;SelLength&nbsp;:=&nbsp;(FoundAt&nbsp;-&nbsp;selstart)+1;&nbsp;&nbsp;\n&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;SelAttributes.Style&nbsp;:=&nbsp;[];&nbsp;&nbsp;\n&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;SelAttributes.Color&nbsp;:=&nbsp;strC;&nbsp;&nbsp;\n&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;StartPos&nbsp;:=&nbsp;FoundAt+1;&nbsp;&nbsp;\n&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;FoundAt&nbsp;:=&nbsp;FindText(&#39;&#39;&#39;&#39;,&nbsp;StartPos,&nbsp;Length(Text),&nbsp;[]);&nbsp;&nbsp;\n&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;end;&nbsp;&nbsp;\n&nbsp;&nbsp;&nbsp;&nbsp;end;&nbsp;&nbsp;\n&nbsp;&nbsp;end;&nbsp;&nbsp;\n&nbsp;&nbsp;Startpos&nbsp;:=&nbsp;0;&nbsp;&nbsp;\n&nbsp;&nbsp;with&nbsp;RichE&nbsp;do&nbsp;&nbsp;\n&nbsp;&nbsp;begin&nbsp;&nbsp;\n&nbsp;&nbsp;&nbsp;&nbsp;FoundAt&nbsp;:=&nbsp;FindText(&#39;{&#39;,&nbsp;StartPos,&nbsp;Length(Text),&nbsp;[]);&nbsp;&nbsp;\n&nbsp;&nbsp;&nbsp;&nbsp;while&nbsp;FoundAt&nbsp;&lt;&gt;&nbsp;-1&nbsp;do&nbsp;&nbsp;\n&nbsp;&nbsp;&nbsp;&nbsp;begin&nbsp;&nbsp;\n&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;SelStart&nbsp;:=&nbsp;FoundAt;&nbsp;&nbsp;\n&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Startpos&nbsp;:=&nbsp;FoundAt+1;&nbsp;&nbsp;\n&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;FoundAt&nbsp;:=&nbsp;FindText(&#39;}&#39;,&nbsp;StartPos,&nbsp;Length(Text),&nbsp;[]);&nbsp;&nbsp;\n&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if&nbsp;FoundAt&nbsp;&lt;&gt;&nbsp;-1&nbsp;then&nbsp;&nbsp;\n&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;begin&nbsp;&nbsp;\n&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;SelLength&nbsp;:=&nbsp;(FoundAt&nbsp;-&nbsp;selstart)+1;&nbsp;&nbsp;\n&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;SelAttributes.Style&nbsp;:=&nbsp;[];&nbsp;&nbsp;\n&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;SelAttributes.Color&nbsp;:=&nbsp;strC1;&nbsp;&nbsp;\n&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;StartPos&nbsp;:=&nbsp;FoundAt+1;&nbsp;&nbsp;\n&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;FoundAt&nbsp;:=&nbsp;FindText(&#39;{&#39;,&nbsp;StartPos,&nbsp;Length(Text),&nbsp;[]);&nbsp;&nbsp;\n&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;end;&nbsp;&nbsp;\n&nbsp;&nbsp;&nbsp;&nbsp;end;&nbsp;&nbsp;\n&nbsp;&nbsp;end;&nbsp;&nbsp;&nbsp;&nbsp;\n&nbsp;&nbsp;if&nbsp;InVisible&nbsp;then&nbsp;&nbsp;\n&nbsp;&nbsp;begin&nbsp;&nbsp;\n&nbsp;&nbsp;&nbsp;&nbsp;RichE.Visible&nbsp;:=&nbsp;True;&nbsp;&nbsp;\n&nbsp;&nbsp;&nbsp;&nbsp;Form.Caption&nbsp;:=&nbsp;OldCap;&nbsp;&nbsp;\n&nbsp;&nbsp;end;&nbsp;&nbsp;\n&nbsp;&nbsp;RichE.SelStart&nbsp;:=&nbsp;0;&nbsp;&nbsp;\nend;<\/pre>\n<p><em><em><em><em><em><em><em><em><br \/><\/em><\/em><\/em><\/em><\/em><\/em><\/em><\/em><\/p>\n","protected":false},"excerpt":{"rendered":"<p>\u4e0b\u9762\u7684\u4ee3\u7801\u5c06\u4ee5\u6307\u5b9a\u989c\u8272\u5bf9\u4e00\u4e9b\u6307\u5b9a\u5355\u8bcd\u7740\u8272\uff0c\u5c31\u8c61delphi\u4e2d\u7684\u4ee3\u7801\u7f16\u8f91\u5668\u90a3\u6837\u3002&nbsp; procedure&nbsp;CodeColors(Form&nbsp;:&#038;nbsp&#46;&#46;&#46;<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":[],"categories":[4],"tags":[],"_links":{"self":[{"href":"https:\/\/www.2lin.top\/index.php?rest_route=\/wp\/v2\/posts\/134"}],"collection":[{"href":"https:\/\/www.2lin.top\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.2lin.top\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.2lin.top\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.2lin.top\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=134"}],"version-history":[{"count":0,"href":"https:\/\/www.2lin.top\/index.php?rest_route=\/wp\/v2\/posts\/134\/revisions"}],"wp:attachment":[{"href":"https:\/\/www.2lin.top\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=134"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.2lin.top\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=134"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.2lin.top\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=134"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}