在Flash Builder 4中调试或观察静态变量

时间:2010-12-16 00:52:12

标签: flex flash actionscript-3 flash-builder

问题:

当我设置断点并调试我的应用程序时,Flash Builder 4不会在变量窗口中显示静态变量。我似乎无法在其他帖子中找到解决方案。

更详细信息:

我正在使用flash builder 4在我的一个AS3类上执行flex单元测试。我在[Before]函数中设置了一个静态变量,在每个测试中都可以访问它。

我在其中一个测试中设置了一个断点来查看它失败的原因,但我注意到当我在变量窗口中展开'this'对象时,静态变量不会出现。 (在这种情况下,我的静态变量是与该类关联的唯一变量,因此变量窗口中唯一的对象是“this”对象。)

问题: 有人知道如何在变量窗口中显示静态变量吗?

谢谢,

曲奇

3 个答案:

答案 0 :(得分:7)

确实,“变量”面板仅显示范围内的非静态变量。

但是,您可以使用“表达式”面板来监视这些静态变量......即使它们是私有的。只需将YourClass.staticVariable键入新的Expression行,它就会毫无问题地为您监视静态。

您也可以将鼠标悬停在静态变量上,工具提示会显示值。

为了好玩,我将它与Visual Studio进行了比较。可比较的面板在那里被称为“本地人”,它可以让你在看实例时看到静态成员......所以,使用VS作为先例,你不会因为认为你可以做到这一点而不合适在FB。但是,唉,请改用“表达式”。

:)

答案 1 :(得分:5)

变量视图有一个过滤器,用于确定您将看到的内容。在变量面板的右上角是一个菜单按钮(图标是一个倒三角形),单击它,从下拉列表中选择Flex并选择“显示无法访问的成员变量”。

干杯!

答案 2 :(得分:5)

我使用的是Flash Builder 4.7,但K0j0和Brian Genisio给出的答案都不适用。到目前为止,我可以调试静态变量的唯一方法是将其分配给局部变量(因此必须修改代码)。希望有更好的办法以某种方式做到这一点