TMSScripter工作室开发者向导.docVIP

  • 19
  • 0
  • 约2.05万字
  • 约 21页
  • 2020-08-12 发布于浙江
  • 举报
Scripter Studio Developers guide PAGE PAGE 20 Scripter工作室开发者向导 版权2002 Automa 概要 Scripter工作室是把脚本能力加到你的应用程序的一套的Delphi/C++Builder部件。Scripter工作室能使你的最终用户使用可视化工具书写和执行自己的脚本。包含的组件有: TatPascalScripter - 非视觉组件,执行Pascal语法的脚本。 TatBasicScripter - 非视觉组件,执行Basic语法的脚本。 TatPascalFormScripter - 窗口认识Pascal脚本,继承自TatPascalScripter组件。 TatBasicFormScripter - 窗口认识Basic脚本,继承自TatBasicScripter组件。 TatScriptDebugDlg - 脚本高度的对话组件。 TAdvMemo - 语法高亮Memo,在程序运行时编辑脚本。 TatPascalScripter和TatBasicScripter都是从TatCustomScripter组件继承下来的,都使用相同的属性和方法来运行脚本。 脚本有下列特征: ·在运行时间解释Pascal和Basic语言。 ·脚本能访问任何Delphi对象,包括属性和方法。 ·脚本支持try...except和try...finally异常处理。 ·允许脚本读/写Delphi变量和常量。 ·允许Delphi代码访问(读/写)脚本变量。 ·你能建造(从Delphi代码)你自己的类,包含属性和方法,并在脚本中使用。 ·Delphi系统的大多数程序(转化,日期,格式化,字符串操作)已经包括(IntToStr,FormatDateTime,Copy,Delete等等)。 ·你能保存/装载编译了的代码,这样你不需要每次运行脚本的时候都需要源代码。 ·调试能力(断点,跟踪,运行到光标,暂停,中断,等等) ·安全的线程 ·COM(微软普通的对象模型)支持 语言特征 Pascal语法 TatPascalScripter组件执行脚本的Pascal语法。Pascal语法支持: ??begin .. end ??procedure and function ??if .. then .. else ??for .. to .. do .. step ??while .. do ??repeat .. until ??try .. except and try .. finally ??case ??array constructors (x:=[ 1, 2, 3 ];) ??^ , * , / , and , + , - , or , , =, = , = , , , div , mod , xor , shl , shr ??访问对象属性和方法?ObjectName.SubObject.Property) 脚本结构 脚本结构用2个主要的块组成: 1、过程和函数声明; 2、主要的块。 两个块是可选择的,但是在脚本中至少要有一个。主要的块不需要begin...end。它可以是一个单一的声明。一些例子: 脚本1: procedure DoSomething; begin CallSomething; end; begin CallSomethingElse; end; 脚本2: begin CallSomethingElse; end; 脚本3: function MyFunction; begin result:=Ok!; end; 脚本4: CallSomethingElse; 和Pascal一样,声明应该由“;”结尾。begin...end块是允许集合一批声明。 标识符 在脚本的标识符名字(变量名字,函数和过程名字,等等。)跟随Pascal最普通的规则: 应该从一个字符开始(a..z或A..Z),或“_”,和继之以包含数字字母的字符或“_”字符。 不能包含任何别的字符或空格。 有效的标识符: VarName _Some V1A2 无效的标识符: 2Var My Name Some-more This,is,not,valid 赋值声明 赋值语句和Pascal一样,赋值语句是使用“:=”。例子: MyVar:=2; Button.Caption:=This + is ok.; 字符串 字符串是同pascal一样使用单引号()字符。双引号()不能使用。你也能使用(#)字符宣布一个字符在一个字符串的内部,不需要使用(+)操作符增加一个字符到一个字符串。一些例子: A:=This is a text; Str:=Text +concat; B:=String with CR and

文档评论(0)

1亿VIP精品文档

相关文档