CodeColor相关(二) 基类TCodeColor

2008-04-09 04:21:37来源:互联网 阅读 ()

新老客户大回馈,云服务器低至5折

第二部分:基类 TCodeColor

一、本章说明
暂时先公开基类代码,和子类的部分代码,子类中字符分析函数 Analyzer 的实现暂时不公开,主要出于这样的考虑:
1、基类已实现大部分共用功能,但是还不完善,代码也不规范。特别是各个版本的 Analyzer 中都会用到这些功能,所以待听取路高手的意见,将基类改进完善后,将重写 Analyzer 并在第三部分中公开;
2、如果您急于使用本程序,有两种方法:一是您可以留下邮箱地址,我会寄给您一份程序;二是利用并不完善基类 TCodeColor 继承出一个子类,自己实现 Analyzer ,字符分析的方法可以参考 李马行云流水网站 提供的 C 语言版 《Pascal 词法分析器》源代码;
3、欢迎大家提出宝贵意见、想法,同时尽可能的留下相应的解决方案。

二、用户端
很简单,不做过多说明:

//┏━━━━━━━━━━━━━━┓
//┃代码着色:CodeColor v1.0
//┃来自:悄然无声的 Blog
//┗━━━━━━━━━━━━━━┛


procedure TfrmMain.Button1Click(Sender: TObject);
var
cc:TCodeColor;
begin
cc:=TCC_Delphi.Create(''''gainsboro'''',720);
cc.Source:=Memo1.Text;
cc.Processor;
Memo1.Text:=cc.OutPut;
Memo1.Lines.SaveToFile(''''result.htm'''');
end;


二、基类 TCodeColor
也很简单,在注释中已有详细说明。IsAlphaIsNumberic 都用的土方法,或许还有更好的实现方法。IsMBCSChar 是经过滚龙的三次指点才变成现在这个样子的,原先叫 IsHZ ,所以欢迎大家指点一二。

//┏━━━━━━━━━━━━━━┓
//┃代码着色:CodeColor v1.0
//┃来自:悄然无声的 Blog
//┗━━━━━━━━━━━━━━┛


unit CodeColor;

interface

uses
Classes,SysUtils;

type
TCodeColor = class(TObject)
protected
FOutPut: string; //处理后的 Html 文本
FSource: string; //处理前的源文本
FPosition: Integer; //当前被处理字符的位置
FBGColor:string; //Html 中表格的背景颜色
FWidth:string;//Html 中表格的宽度
ReserveWords: TStrings;//关键字

//抽象的字符分析函数,便于在子类中有不同的实现
procedure Analyzer; virtual; abstract;

//下面四个函数在子类中的 Analyzer 中使用
function

标签:

版权申明:本站文章部分自网络,如有侵权,请联系:west999com@outlook.com
特别注意:本站所有转载文章言论不代表本站观点,本站所提供的摄影照片,插画,设计作品,如需使用,请与原作者联系,版权归原作者所有

上一篇:扫雷外挂的设计与实现(二)

下一篇:网页中Delphi代码语法上色程序 源代码