• ScriptControl接口


    http://www.cnblogs.com/railgunman/articles/1824304.html

    BAIDU一下ScriptControl,大多数都是“Delphi中ScriptControl的高级应用(一)”,从CSDN上拷贝过来的,讲得很浅。看得我都无语了。不知有谁能提供更深入的学习资料。
    下面是ScriptControl的API。也是从网上找的:(原地址:http://home.id666.com/user/setoutsoft/disk/myhome/ScriptDemo.htm

    ScriptControl接口

    属性名称

    类型

    备注

    AllowUI

    BOOL

    检测是否允许运行用户的接口元素。如果为False,则诸如消息框之类的界面元素不可见。

    CodeObject

    Object

    脚本暴露给宿主调用的对象。只读。

    Modules

    Modules

    宿主提供给脚本的组件库模块。只读。(COM组件通常都是以对象收集的形式向用户提供可以留给用户二次开发的对象集合,每一个收集即一个Modules)

    Language

    String

    设置或获取脚本引擎解释的语言,例如:VBScript、JScript。

    Name

    String

    脚本引擎的名称。只读。

    Procedures

    Procedures

    返回模块中定义的过程的集合

    SitehWnd

    HWND

    在脚本中显示UI的父窗口句柄

    State

    Enum

    设置或返回控件的状态,如果为0,控件只执行语句但不转发事件,为1则为加入的本控件接受的对象转发事件。

    Timeout

    Long

    控件的执行脚本的超时值,-1表示不超时

    UseSafeSubset

    BOOL

    设置或返回宿主程序是否关心安全。宿主程序的安全级别可以从此属性设置

    Error

    Error

    错误对象,发生错误时,此属性返回一个错误对象

    方法名称

    参数

    功能

    AddCode

    Code As String

    往脚本引擎中加入要执行的脚本

    AddObject

    Name As String, Object As Object, [AddMembers As Boolean = False]

    往脚本引擎加入一个对象,以便在脚本中可以使用该对象提供的方法等。

    Eval

    Expression As String

    表达式求值

    ExecuteStatement

    Statement As String

    解释并执行脚本语句

    Reset

    丢弃所有的对象和代码,将State属性置0。

    Run

    ProcedureName As String, ParamArray Parameters() As Variant

    运行一个指定的过程

    事件名称

    功能

    Error

    有错误发生时激发该事件

    TimeOut

    执行过程超时时发生

    一般使用方法

    1、在程序中加入ScriptControl

    2、定义一个ScriptControl的实例

    3、调用AddCode等方法向脚本引擎中加入要执行的脚本。

    4、调用Run执行要执行的脚本函数。

    -----------------------------------------------------------------------
    一般说来,ScriptControl都是用来做以下几种事情。
    1. 计算表达式的值,如scriptObj.Eval('100+200*3/5-9');
    2. 用来对script进行加密(escape)和解密(unescape).
    3. 用Procedures进行脚本的添加和执行.

    ---------

    function TForm1.DoCaculate(exp: string): string;
    var
      script: Variant;
    begin
      script := CreateOleObject('ScriptControl');
      script.Language := 'JavaScript';
      Result := script.Eval(Exp);
    end;
    delphi lazarus opengl 网页操作自动化, 图像分析破解,游戏开发
  • 相关阅读:
    怎样用Lodrunner测试WAP站点的性能(两种解决方案)
    LR测试登陆后进行的操作时 绕过登录
    单元测试 模块接口测试
    一个分布式服务器集群架构方案
    利用loadrunner代理方式,录制手机APP脚本
    安卓开发环境安卓
    安卓自动化测试(2)Robotium环境搭建与新手入门教程
    安卓自动化测试(1)安卓自动化测试原理概念
    HTML框架
    HTML5表单提交与PHP环境搭建
  • 原文地址:https://www.cnblogs.com/delphi-xe5/p/5408764.html
Copyright © 2020-2023  润新知