posts - 274,  comments - 1258,  trackbacks - 0



   相信大家只要用过ActionScript编程,一定会为调试(包括远程调试)Flash文件感到非常不便,笔者也曾经有过这样的烦恼。现在随着这款调试器的问世,这个问题终于迎刃而解了!
  本调试器初始化时只是一个按钮,不会占用很多版面,你可以将它放在屏幕的右上角。它自动以所在的MC作为相对路径的起点。
  本调试器外观上共分三部分:函数调试器、变量查看/赋值器及输出窗口。下面分别介绍它们。
 ·函数调试器
  功能:该调试器可以调用指定的函数,并将结果输出到屏幕和指定的变量中。
  用法:函数参数用','分隔
     可以指定函数的this对象,留空表示本调试器所在的MC
     可以用函数返回值为变量赋值,留空表示不赋值
     本调试器尝试将各字段的字符串转换为代表的值,具体顺序见下文“myEval()转换的顺序”。

 ·变量查看/赋值器
  功能:该调试器可以查看指定的变量,并重新赋值
  用法:如果只想查看变量本身,点"查看"
     如果想查看变量的属性、方法等,点"查看详细"
     可以用变量的值或常量来赋值
     本调试器尝试将各字段的字符串转换为代表的值,具体顺序见下文“myEval()转换的顺序”。

  编程方面,该调试器还在_global里注册了以下API以方便调试:
 ·myEval()
  用法1:function myEval(target:String):Object
  说明:本函数是eval()函数的扩展,支持转换到各种内置类型。
  用法2:function myEval(target:String, newVal:String):Object
  说明:本函数是eval()函数的扩展,支持用各种常量、变量为target赋值。

 ·myEval()转换的顺序
   1、如果字符串由""括起,则返回""之间的字符串;
   2、尝试转换为this、数字、布尔值和undefined;
   3、尝试转换为已存在的全局变量;
   4、尝试转换为已存在的时间轴变量;
   5、尝试转换为新的时间轴变量;
   6、返回undefined。

 ·myTrace()
  用法1:function myTrace(msg:String)
  说明:本函数是trace()函数的扩展,msg将被输出到调试器输出和Flash内置输出上
  用法2:function myTrace(msg:String,'+')
  说明:使用这种格式时,之前的调试器输出会被保留。

 ·see()
  用法:function see(targetStr:String):String
  说明:本函数可以查看对象本身、子对象、属性、方法等的类型和值。

一些例子:
 ·在“函数调用”中输入Math.cos,在“函数参数”中输入Math.PI,点“执行”,则有如下输出:
  函数名:Math.cos
  参数名:Math.PI
  参数值:3.14159265358979
  this对象:_level0
  执行结果:-1

 ·在“变量名”中输入_root,点“查看详细”,则有如下输出:
  see _root (movieclip) = _level0
  setStyle (function)
  notifyStyleChangeInChildren (function)
  ……

 ·在“变量名”中输入_root.a,在“赋新值”中输入"hello",点“赋值”,则有如下输出:
  变量名:_root.a
  变量类型:undefined
  变量值:undefined
  新变量类型:string
  新变量值:hello

 ·在你的程序里,调用see("_global"),则会返回
  see _global (object) = undefined
  __SVMouseWheelManager (object)
  getStyleCounter (number) = NaN
  see (function)
  myTrace (function)
  myEval (function)
  ……
  希望大家喜欢这款调试器!如果有什么建议可以留言说说,想索要源代码的话也可以Q我或者回贴留下e-mail。

posted on 2007-02-27 02:44 踏雪赤兔 阅读(2413) 评论(5)  编辑 收藏 引用 所属分类: 玩转编程

FeedBack:
# re: [AS]Flash函数调试器及变量修改、赋值器发布!
2007-03-13 23:10 | Jezz
我对Flash和C++也比较感兴趣,一直想做一些应用出来
你这个调试器是不是用的Flash的localConnect对象实现的?  回复  更多评论
  
# re: [AS]Flash函数调试器及变量修改、赋值器发布!
2007-03-15 14:12 | 踏雪赤兔
不是,而是按一个内嵌的组件来做的,可能有时间会开发相应的功能~  回复  更多评论
  
# re: [AS]Flash函数调试器及变量修改、赋值器发布!
2007-11-06 10:01 | cloudy
谢谢楼主!我最近也在研究调试方面的东西~想要份源文件学习
danyun1982@163.com  回复  更多评论
  
# re: [AS]Flash函数调试器及变量修改、赋值器发布!
2008-12-05 14:48 | SANJING
不知道楼主有没有遇到过在firefox下,localconnect会出错  回复  更多评论
  
# re: [AS]Flash函数调试器及变量修改、赋值器发布!
2011-03-10 13:51 | peboo
谢谢楼主!我最近也在研究flash调试方面的东西

想要份源文件研究下。

我的邮箱是:peboo@qq.com

万分感谢期待您的回信,最好告诉我您的Qq,可以直接请教下  回复  更多评论
  
只有注册用户登录后才能发表评论。

百度空间| 见闻日记| 编程感悟
我的twitter


LOGO

自我介绍:百度厂基础平台车间的一名挨踢民工。擅长C++、算法、语言设计、分布式计算,也用过Java,Python, PHP,JS/AS等语言开发。请关注我的twitter (免翻墙版) 发QQ消息


添加到收藏夹 Locations of visitors to this page

常用链接

随笔分类(300)

随笔档案(274)

文章分类(38)

相册

收藏夹(54)

与博主互动

博客手拉手

搜索

  •  

积分与排名

  • 积分 - 400132
  • 排名 - 10

最新评论

阅读排行榜

评论排行榜