设计监视变量(调试)窗口

时间:2009-04-06 04:38:47

标签: user-interface debugging watch

我已经实现了支持的脚本语言 .NET对象的创建和使用。

为了易于使用,我想实现一个用户界面 在内存中查找变量。

我检查了Visual Studio中的debug / watch变量窗口 在Eclipse中,他们似乎都使用相同的模式 - 树视图表示变量< - >属性关系, 这很好,但它需要大量的“扩展节点”点击 找到特定属性或字段的值。

如果所有属性都可以轻松解决太多点击问题 和字段会自动扩展 - 但这可能会 导致另一个问题 - 将使用太多的screan房地产 只是为了显示一个变量。

你能推荐任何好的(或不寻常的)调试/视图/变量监视UI实现, 除了我曾经见过的(Visual Studio,Eclipse)。

这个想法是能够直观地掌握物体的状态 一瞥(或尽可能接近它)。

4 个答案:

答案 0 :(得分:2)

这可能类似于Visual Studio / Eclipse中的内容,但WebKit(和Safari 4)的最新版本有一个很好的方法来查看控制台窗格中的JavaScript对象。网络检查员:

Demo Object in WebKit's Web Inspector Console
(来源:quintusquill.com

此外,Dashcode'调试器中的“Stackframes& Variables”面板非常易于使用:

alt text
(来源:quintusquill.com

最后,你考虑过包括一个搜索框吗?如果用户需要找到深埋在对象中的特定属性(并且他们知道其名称),这将非常有用。

史蒂夫

答案 1 :(得分:0)

您可以使此工作类似于在调试模式下将鼠标悬停在Visual Studio编辑器中的实时变量上时所发生的情况:您将获得一个工具提示,显示该对象的所有属性的名称和值,以及当鼠标悬停在任何属性上时在该列表中的项目中,您还可以获得这些对象详细信息的其他弹出窗口。通过这种方式,您可以通过移动鼠标向下钻取并获得所需内容。能够将任何这些视图锁定到您的观察窗口也是一个奖励。希望这有帮助!

答案 2 :(得分:0)

一种预览可以帮助那里,当一个对象被扩展时,用户可以检查哪些属性是有趣的

- a
  [ ] prop1 : value1
  [*] prop2 : value2
  [ ] prop3 : value3

用户将看到

+ a : { prop2 : value2 }

您可以让用户在班级的基础上自定义哪些属性。

答案 3 :(得分:0)

我完全同意 - 树视图必须是世界上使用最错误的GUI控件。不幸的是,我不知道任何更好的调试器:-(

相关问题