前往小程序,Get更优阅读体验!
立即前往
发布
社区首页 >专栏 >Visual FoxPro 调试器简介(三)

Visual FoxPro 调试器简介(三)

作者头像
firstxinjie
发布2024-12-06 13:54:02
发布2024-12-06 13:54:02
400
举报
文章被收录于专栏:X#(XSharp)

作者:Colin Nicholls

发布时间:1999.05

翻译:

deepl https://www.deepl.com/translator

格式整理:xinjie

—————————————————

工具提示值显示

如下图所示,跟踪窗口的一个非常令人兴奋的功能是,如果将光标放在变量或字段名上,其当前值就会通过工具提示显示出来:

但是,这不适用于 #define 表达式,也不适用于当前执行的过程或方法以外模块中的值。

当你在运行程序时,一个黄色的小箭头会指向下一行要执行的代码。当你查看调用堆栈中较高的方法或过程时,该方法中的当前代码行会用黑色三角形表示,如图所示:

将代码拖动到命令窗口

跟踪窗口是一个拖动源:例如,您可以选中一段代码,将其拖放到命令窗口中执行。

提示:在跟踪时,您还可以在命令窗口中使用 THIS 和 THISFORM!

在两个断点之间跟踪

通常情况下,当您Resume, Run to cursor 或 Step out,跟踪窗口会保持静态,而代码会继续执行。打开 "在两个断点间跟踪(Trace between breaks) "后,你就可以在跟踪窗口中看到代码自动逐行执行。您可以从上下文菜单中选择 "调速(Throttle)",并在弹出的对话框中设置以秒为单位的值,从而设置语句执行之间的延迟时间:

警告:在断点之间开启跟踪(尤其是在调速设置为非零的情况下),然后在 Resume 之前,请确保已将 "ESCAPE "设置为 "ON"。否则,您的程序将不可避免地逐行进入应用程序的下一个等待状态,即使这需要花费数小时。如果您在程序中的某个地方将 "ESCAPE "设置为 "OFF"(我们大多数人都这样做),那么您就有麻烦了。

或者,在代码的下游设置一个断点,确保程序暂停。这就是...

设置断点

断点是程序暂停执行的条件。在特定代码行设置断点的最简单方法是双击代码左侧的灰色区域。断点可以启用或禁用,我们很快就会看到。下图显示了设置了两个断点的代码。填充圆点表示活动断点,透明圆点表示非活动断点。

您还可以按下调试工具栏上的切换断点按钮,在当前代码行设置断点。

提示:也可以使用设计时源代码编辑窗口右键菜单上的设置断点选项,在光标所在的代码行上设置断点。

警告:只有当代码行被实际执行时,断点才会起作用。如果断点位于未执行的代码块中,程序仍将继续运行。

这些断点在哪里?有没有一个地方可以让我们看到当前所有的断点?有一个地方,它也是另一个更强大的设置断点的地方--断点对话框:

断点对话框

单击调试工具栏上类似 "停止所有窗口 "图标的按钮,可以显示模式化的断点对话框(见上文 "调试器工具栏")。(据我所知,这是在 FoxPro frame 中工作时显示断点对话框的唯一方法。

调试器工具栏上有三个专门用于断点的按钮:

在这里,可以单独启用或禁用当前定义的断点,也可以完全删除。如果你决定不清除所有断点定义,可以点击 "取消 (Cancel)"来撤销操作。而工具栏上的按钮则是冷酷无情的清除所有断点定义。

注意:在命令窗口中执行 CLEAR ALL 命令并不能清除这些断点定义。

断点对话框可以创建四种类型的断点。让我们依次来了解一下:

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2024-04-22,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 xinjie的VFP 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档