CR的代码文本

all for learning about the world
  订阅 订阅  :: 管理

Lingo13 - 和Flash交互之getURL

Posted on 2011-11-15 11:18  mumuliang  阅读(874)  评论(0编辑  收藏  举报

首先getURL是as2及之前的做法,as3是这样的。

 

as3的使用URL 

    import flash.net.navigateToURL;
    import flash.net.URLRequest;
    // 用法
   var targetURL:URLRequest = new URLRequest("lingo: movieDo(\"withLingo\")");
    navigateToURL(targetURL);

 

flash用getURL和director脚本交互有三种方式,lingo语句,直接调用event handler,和向D传string。

 

lingo语句

// Flash as2.0
getURL("lingo: MovieHandlerName(arg1, arg2, argn)");

// Flash as3.0
var targetURL:URLRequest = new URLRequest("lingo: MovieHandlerName(arg1, arg2, argn)");
navigateToURL(targetURL);

-- Director (Movie script)
on MovieHandlerName a, b, c
  put a && b && c -- puts: arg1 arg2 argn
End


 

event

// Flash as2.0
getURL("event: HandlerName, arg1, arg2, argn");

// Flash as3.0
var targetURL:URLRequest = new URLRequest("event: HandlerName, arg1, arg2, argn");
navigateToURL(targetURL);


-- Director (Behavior script attached to Flash sprite)
on HandlerName me, a, b, c
  put a && b && c -- puts: arg1 arg2 argn
end


string  

// Flash as2.0
getURL("Anything you want can go here");

// Flash as3.0
var targetURL:URLRequest = new URLRequest("Anything you want can go here");
navigateToURL(targetURL);

-- Director (Behavior script attached to Flash sprite)
on getURL me, str
  put str -- puts: Anything you want can go here
end

 

// Flash as2.0
getURL("Anything you want can go here");

// Flash as3.0
var targetURL:URLRequest = new URLRequest("Anything you want can go here");
navigateToURL(targetURL);

-- Director (Movie script)
on getURL str
  put str -- puts: Anything you want can go here
End


 

-------------------------------------------

这种方式和在lingo中调用as的method进行比较,后者是确实调用了,并且一路做完了。

这种方式是,我只管向lingo扔一个“调用请求”,扔出来就算了事。做没做,那就不知道了。

测试下来,貌似是不管扔了多少次,在lingo的一帧内只做一次,其他的会被丢弃,并不累计到下一次。