25.6节. 在Flex Builder调试中创建和监视表达式

25.6.1. 问题
在Flex程序运行时我想跟踪一个值的变化。
25.6.2. 解决办法
使用Flex Builder调试器运行你的程序,并在你要监视的变量的地方设置断点。在Flex Builder调试器的表达式窗口创建一个新的表达式。
25.6.3. 讨论
表达式是一个非常强大的调试工具,它能让你看到范围内的所有变量的值。设置断点的地方的所有对象都可以通过创建表达式来查看其值,像图25-2.

图25-2. 创建一个Expression

比如,如果你在数组实例化的地方设置断点,
+展开
-XML
<mx:Canvas xmlns:mx="http://www.adobe.com/2006/mxmlwidth="400"
height="300creationComplete="init()">

<mx:Script>
<![CDATA[
import mx.collections.ArrayCollection;
private var arr:ArrayCollection;
private function init():void {
arr = new ArrayCollection([1,2,3,4, 5]);
//breakpoint here
}
private function newFunc():void {
var newArr:ArrayCollection = new ArrayCollection([3,4, 5, 6]);
}

]]>
</mx:Script>
</mx:Canvas>

arr 的值将被认为是null 。如果你按下F6 继续执行程序, 这个表达式将被认为是ArrayCollection,它包含一个由5个整数组成的的数组。(图25-3).

图25-3. 该表达式显示了变量的值

但是newArr被认为是null,因为它不在范围内(图25-4)。

图25-4. 只能计算范围内的变量的值

如果你把断点设置在17行,那么newArr和arr都被计算为ArrayCollection,因为它们都在当前范围内。

加支付宝好友偷能量挖...


评论(0)网络
阅读(86)喜欢(0)flash/flex/fcs/AIR