问题:
当我设置断点并调试我的应用程序时,Flash Builder 4不会在变量窗口中显示静态变量。我似乎无法在其他帖子中找到解决方案。
更详细信息:
我正在使用flash builder 4在我的一个AS3类上执行flex单元测试。我在[Before]函数中设置了一个静态变量,在每个测试中都可以访问它。
我在其中一个测试中设置了一个断点来查看它失败的原因,但我注意到当我在变量窗口中展开'this'对象时,静态变量不会出现。 (在这种情况下,我的静态变量是与该类关联的唯一变量,因此变量窗口中唯一的对象是“this”对象。)
问题: 有人知道如何在变量窗口中显示静态变量吗?
谢谢,
曲奇
答案 0 :(得分:7)
确实,“变量”面板仅显示范围内的非静态变量。
但是,您可以使用“表达式”面板来监视这些静态变量......即使它们是私有的。只需将YourClass.staticVariable键入新的Expression行,它就会毫无问题地为您监视静态。
您也可以将鼠标悬停在静态变量上,工具提示会显示值。
为了好玩,我将它与Visual Studio进行了比较。可比较的面板在那里被称为“本地人”,它可以让你在看实例时看到静态成员......所以,使用VS作为先例,你不会因为认为你可以做到这一点而不合适在FB。但是,唉,请改用“表达式”。
:)
答案 1 :(得分:5)
变量视图有一个过滤器,用于确定您将看到的内容。在变量面板的右上角是一个菜单按钮(图标是一个倒三角形),单击它,从下拉列表中选择Flex并选择“显示无法访问的成员变量”。
干杯!
答案 2 :(得分:5)
我使用的是Flash Builder 4.7,但K0j0和Brian Genisio给出的答案都不适用。到目前为止,我可以调试静态变量的唯一方法是将其分配给局部变量(因此必须修改代码)。希望有更好的办法以某种方式做到这一点