Delphi7的开发调试技巧及快捷键.

  • 格式:doc
  • 大小:27.50 KB
  • 文档页数:11

(转 Delphi7的开发调试技巧及快捷键

Delphi 开发的调试技巧

1、设置调试选项

Delphi 主菜单。 【 Project 】 ->【 Options 】 , 或单击工程管理器中的

【 Project Options 】 按钮。显示 Project Options,选择 Complier

<1>选中 Debug Information :把调试信息嵌入到 DCU 单元文件,会加大编译后的

DCU 文件,但不会影响最后生成的 exe 的大小和执行速度。同时激活【 Search 】菜单中的【 Find Error 】命令。

当文件中包含调试信息并得到一个运行时错误 (run-time error, 记录下 Delphi 提供的 16进制地址,在【 Search 】->【 Find Error 】中输入, Delphi 将重新编译程序,并停留在 产生错误的命令行。

<2>Local symbols:决定调试器能否看到在 Implementation 中定义的局部变量。

<3>Reference infoj选项 /Definition Only选项

是否产生应用程序中对象标识符的引用信息。 信息和对象代码存在 dcu 文件中, 可以使用对 象浏览器查看。如果 Definition Only 选项同时选中,编译器将生成标识符定义位置的信 息,能够激活对象浏览器的 Refenrence 页。如果不选, Dcu 文件更小。

编辑器命令

{$D} Debug Information

{$L} Local Information

{$Y} Symbol Information

{$C} Assertions

2、使用内部调试器

<1> 命令行参数

在【 Run 】->【 Parameters 】中设置

<2>断点

条件断点

使源代码断点只有在满足某个条件时才有效。

在【 View 】->[Debug windows]->【 BreakPoints 】打开“BreakPoint List”对话框, 右击断点,从弹出菜单中选择属性。打开“Source BreakPoint Properties”对话框,在

Condition 中输入条件,在对话框中点击按钮【 Advanced 】,可以设置更多选项,“Ignore Subsequent Exceptions”使调试程序遇到下一个断点时不中断;选中“Handle

Subsequent Exception”则调试程序遇到下一个断点时恢复默认性能。

也可以通过【 Run 】->【 Add BreakPoint】设置。

数据断点

特定地址的内存被修改时才使程序挂起。【 Run 】->【 Add BreakPoint】->【 Data BreakPoint 】 命令添加, 或者在 BreakPoint List 对话框中右击, 选择 Add

Data BreakPoint 。 输入监测内存区域的开始地址和长度(字节数

地址断点

特定地址的代码执行时就使程序挂起。通常在 CPU 窗口中设置。

模块加载地址

在一个模块加载时使程序挂起。【 Run 】->【 Add BreakPoint】

断点组

使用断点组, 任何一个断点都能设置成使其他断点有效或无效, 可以通过断点算法来查 找特殊的错误。

3、单步执行

【 Step Over 】 (F8功能键,【 Trace Into 】(F7功能键,【 Run to Cursor 】(F4功能键

临时使程序暂停【 Program Pause】。

Ctrl+F5 【 Add Watch】 ,Ctrl+F7 【 Evaluate/Modify】

4、其他工具

<1>Debug Inspector 适合查看由许多数据组成的复合数据,诸如类和记录。单击省略 号按钮,可以修改数据的值。

<2>计算和修改 Evaluate/Modify,可以改变变量的值, 但不能访问超出域外的函数和变 量。

<3>访问调用栈 【 View 】->【 Debug Windows】->【 Call Stack】,可以看到函数和 过程的调用情况及传递给他们的参数。

<4>查看线程, 如果应用程序运行了多线程, 可以通过 【 View 】 【 Debug

Windows 】 【 Threads 】 查看线程的状态,可以查看某一线程的源代码,选择当前线程。 (ctrl+alt+t

<5>事件日志

记录调试期间发生的事情。 【 View 】 【 Debug Windows 】 (ctrl+alt+v,可以在 【 Tools 】 【 Debugger Options 】对话框“Debugger”选项组或事件日志的本地菜

单配置事件日志功能。记录的事 件包括:进程开始、终止、模块加载断点、发给应用程序的 Windows 消息以及使用 OutputDebugString (的输出。

<6>模块视图

获取所有加载到应用程序进程中的模块。(ctrl+alt+m

在过程、函数、事件内部, SHIFT+CTRL+向上的方向键 可跳跃到相应的过程、函数、事件 的定义.相反,在过程、函数、事件的定义处, SHIFT+CTRL+向下的方向键 可跳跃到具体过 程、函数、事件内部

CTRL+ SHIFT + C:编写申明或者补上函数 .

如:

procedure TT.A(AA: string; //函数申明

安下:CTRL+ SHIFT + C后,会写上

procedure TT.A(AA: string;

begin

end;

SHIFT+CTRL+E 显示 EXPLORER

crtl + shift + n (n=1,2,3,4......

定义书签

crtl + n (n=1,2,3,4......

跳到书签 n

ALT+鼠标左键可以块选代码,删除对齐的重复代码非常有用。

Ctrl+B Buffer List窗口。

Ctrl+I 同 Tab 键。

Ctrl+M 同 Enter 键。

Ctrl+N 同 Enter 键,但光标位置保持不变。

Ctrl+T 删除光标右边的一个单词。

Ctrl+Y 删除光标所在行。

Ctrl+Shift+↑ 光标在函数体内时,将光标快速移至当前函数声明处。

Ctrl+Shift+↓ 光标在函数声明行时,将光标快速移至函数定义处。

Ctrl+Shift+C 声明一个过程或函数后,直接生成过程或函数的名称、 begin 、

end; Ctrl+Shift+E 光标在 Edit 窗口和 Explorer 窗口间切换。

Ctrl+Shift+J 弹出 Delphi 语句提示窗口,选择所需语句将自动完成一条语句。

Ctrl+Shift+T 在光标行加入 To-Do 注释。

Ctrl+Shift+Y 删除光标之后至本行末尾之间的文本。

Ctrl+F3 Call Stack窗口。

Ctrl+F4 等于 File 菜单中的 Close 项。

Ctrl+鼠标转轮 加速滚屏。

Shift+F8 调试时弹出 CPU 窗口。

Shift+F10 等于鼠标右键(Windows 快捷键。

Alt+F4 关闭所有编辑框中打开的源程序文件,但不关闭项目。

CTRL+ENTER 定位到单元文件

Shitf+箭头 选择

如果同时按住 Alt +Shitf+箭头 , 再进行选择 , 则是一种区域选择 , 而不是行选择 , 粘贴的 时候也就是插入粘贴了 .

F9 运行

CTRL+ F9编译

F8 STEP OVER (步进式调试不进入子过程

F7 TRACE INTO (步进式调试同时追踪进入子过程

F11,F12 切换 EDITOR,INSPECTOR,FORM DESIGNER.

CTRL+ALT+F11 弹出工程管理器

CTRL+F弹出查找对话框

CTRL+R弹出替换对话框

CTRL+ Shitf+C 类过程代码补全(只要在定义部分定义一过程或一函数头则自动帮你生成 实现部分的套架;反之也成

但是 DELPHI 中怎样跳格呢 ? 其实也是有办法的 , 就是 CTRL+K,I向后 ,

CTRL+K,U向前 . 有时候反复输入什么东西是不是很繁 ? CTRL+SHIFT+R录制键盘宏 , 比如我经常做的就是 : 下箭头 -下箭头 -HOME-回车 -CTRL+V, 再键入一次

CTRL+SHIFT+R录制完成 , 之后您可以使用 CTRL+SHIFT+P, 重复宏 , 还是省了一些事的 .

另外在 DELIPHI 中有一个很有用的快键极其有用

这就是 CTRL+J;列如:在一过程中你输入 ifb 后再按 CTRL+J你回去看看效果吧,可能你会 大

吃一惊。这就是 Code Insight.

ctrl+shift+u //块缩进 /反缩进

ctrl+shift+i

取消书签:在书签 N 处,再按一次 SHIFT + CTRL + N

Ctrl+E 一种查找挺好的,其余的都被你们说玩了

按住 Ctrl 再点对象、过程、函数,转到其定义原型,即便是 Delphi VCL 源代码中的 Unit 。 ALT+F4 关闭 DELPHI [:D]

Ctrl+K+O,Ctrl+K+N 将选中的整块代码都转为小写或大写

Ctrl+F 查找

Ctrl+L 继续查找

在 Inspector ,可以用 Ctrl+Tab切换 Properties 页和 Events 页

Ctrl+Enter可进入相应的设置,如在 Preperties 页的 Font 按 Ctrl+Enter

在 Events 中按 Ctrl+Enter可进入相应代码编辑

Ctrl+Shift+i :同时推进 2格

Ctrl+Shift+u :同时退后 2格 [/red]

还有一招,我经常用的,不知大家常不常用

按住 ALT 用鼠标选择文本