麻豆小视频在线观看_中文黄色一级片_久久久成人精品_成片免费观看视频大全_午夜精品久久久久久久99热浪潮_成人一区二区三区四区

首頁 > 編程 > Delphi > 正文

Delphi中ScriptControl的高級應用(一)

2019-11-18 18:02:35
字體:
供稿:網(wǎng)友

DelphiScriptControl的高級應用(一)

在我們的Windows系統(tǒng)里提供了一個叫ScriptControlOCX組件,我們可以用這個組件來實現(xiàn)腳本故事世界的精彩。

1、創(chuàng)建ScriptControl組件服務

首先,我們來看一下該組件都有哪些方法和屬性。如圖001002
001
002

 
接著,我們用Delphi創(chuàng)建組件服務。
   從圖001可知,該組件的PRogID為“MSScriptControl.ScriptControl.1。所以我們可以這樣創(chuàng)建組件:
Var
   sc : OleVariant;
begin
   sc := CreateOleObject('MSScriptControl.ScriptControl.1');
//使用Language屬性來設(shè)定該組件所使用的語言
//語言可以為:VbScriptjavaScript(也可縮寫為JScript)
//相當于在HTML里用的<Script Language=’JScript’>…</Scirpt>
   sc.Language :='Javascript';
end;

2、用Eval()來實現(xiàn)最簡單的數(shù)學表達式的計算

   Eval()是這個組件中用的最多的一個方法,也是經(jīng)常被大家用來計算數(shù)學表達式的一個方法。
   演示
      Function calc(const expression : String):Integer;
      Var
         sc : OleVariant;
      begin   
           //expresion := ‘100+5*3’;
           sc := CreateOleObject('MSScriptControl.ScriptControl.1');
           sc.Language :='JavaScript';
           result := StrtoInt( sc.eval(expression) ); 
      end;
      Sample:  115 := calc(‘100+5*3’);

3、實現(xiàn)漢字加密

JavaScript里有兩個函數(shù)EscapeUnescape,一般都是用作Html代碼里的對Script進行加密時使用,目的是為了防止別人直接查看其腳本,以其亂碼形式顯示。
003
加密:
    Words := ‘這是一段用escape加密的漢字信息!’;
//Result:%u8FD9%u662F%u4E00%u6BB5%u7528escape%u52A0%u5BC6%u7684%u6C49%u5B57%u4FE1%u606F%uFF01
    Result := sc.Eval('escape('''+Words+''')');
解密:
    Result := sc.Eval('unescape('''+Words+''')');

4、利用JavaScript的正則表達式來驗證IP地址的規(guī)范

   這里我們需要用到ScriptControlAddCode方法來添加自定義方法。
   IP地址的規(guī)則是從0.0.0.0-255.255.255.255
   以下就是驗證IP地址的代碼:
   var
   ipreg,script:String;
begin
   //IP正則式
   ipreg := '^([01]?[0-9][0-9]|[01]?[0-9]?[0-9]|2[0-4][0-9]|25[0-5])/.'+
            '([01]?[0-9][0-9]|[01]?[0-9]?[0-9]|2[0-4][0-9]|25[0-5])/.'+
            '([01]?[0-9][0-9]|[01]?[0-9]?[0-9]|2[0-4][0-9]|25[0-5])/.'+
            '([01]?[0-9][0-9]|[01]?[0-9]?[0-9]|2[0-4][0-9]|25[0-5])$';
   //JavaScript自定義函數(shù)        
   script:= 'function IpReg(str){'+
            'var re=new RegExp('''+ipreg+''');'+
           '  return re.test(str);}';
   sc.AddCode(script);
   //執(zhí)行函數(shù)
   if sc.Eval('IpReg('''+Edit1.Text+''')') then
      ShowMessage('正確的IP地址個格式!')
   else  ShowMessage('非法IP地址格式!') ;
end;
----------------------------JoeCom(juwuyi)2005-03-19

上一篇:Delphi7對XML的支持分析

下一篇:SQL在Delphi數(shù)據(jù)庫程序設(shè)計應用淺談

發(fā)表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發(fā)表
學習交流
熱門圖片

新聞熱點

疑難解答

圖片精選

網(wǎng)友關(guān)注

主站蜘蛛池模板: 亚洲精品久久久久久下一站 | 中国美女一级黄色片 | 在线观看免费污视频 | 综合日韩av | 免费看黄色一级片 | 国产一级大片在线观看 | 国产电影精品久久 | 久久国产中文 | 欧美成人黄色小视频 | 欧美一级片在线 | 九色国产| 黄视频网站免费观看 | 91 在线| 国产黄色录像片 | 色视频一区二区 | 电影av在线 | 成人综合免费视频 | 巨乳毛片| 精品国产一区二区三区四区阿崩 | 韩国草草影院 | 国产精品视频一区二区三区四 | 国产91精品久久久久久久 | 欧美亚洲国产成人综合在线 | 美女网站黄在线观看 | www.99热精品 | 成人午夜精品久久久久久久3d | 久久久久久久久久久久久久久伊免 | 久久精品国产精品亚洲 | 国产精品久久久久免费视频 | 欧美人的天堂一区二区三区 | 免费高潮在线国 | 日本成人一二三区 | 欧美性生活视频免费看 | 免费观看黄视频 | 免费看真人a一级毛片 | 一级在线观看 | 欧美性生话视频 | av不卡免费在线 | 国产精品午夜未成人免费观看 | av在线电影网站 | 欧美国产日韩在线 |