canvas教程

delphi开发经验技巧...(3)

字号+ 作者:H5之家 来源:H5之家 2016-12-24 14:02 我要评论( )

然后,找到Delphi的Bin子目录下的BRCC32.EXE文件进行编译, 命令格式为: BRCC32 LB.RC,编译结束后即生成一个资源文件lb.res。要使用该资源文件,需要在单元文件implementation部分的开始处包括资源文件:{$R LB.RES}。

然后,找到Delphi的Bin子目录下的BRCC32.EXE文件进行编译, 命令格式为: BRCC32 LB.RC,编译结束后即生成一个资源文件lb.res。要使用该资源文件,需要在单元文件implementation部分的开始处包括资源文件:{$R LB.RES}。在本例中,上面的字符串用于给一个命令按钮更换Caption设置,使用的函数是Windows API函数 LoadString,以下是使用实例:

//在FormCreat过程中:

var

txtCaption:array [0..255] of char;

begin

//

if LoadString(HInstance,1,txtCaption,SizeOf

(txtCaption))〉0 then

btnStart.Caption:=StrPas(txtCaption);

end;

//在btnStartClick过程中:

var

txtCaption:array [0..255] of char;

begin

if LoadString(HInstance,2,txtCaption,

SizeOf(txtCaption))〉0 then

btnStart.Caption:=StrPas(txtCaption);

end;

这样就可以在程序运行时改变各种属性,而不需要在程序中出现字符串。如果使用另一个Delphi函数LoadStr,会显得更加简单:

var

txtCaption:String;

begin

txtCaption:=LoadStr(2);

if txtCaption〈〉′′ then

btnStart.Caption:=txtCaption;

end;

或许大家可以从以上的过程中看出, 使用123来标识一个字符串有些简陋,也很容易出错,那么怎么办呢?我们可以采取像C++中使用字符串的方法,为每个字符串预定义一个ID,如:

const

IDC—START=1;

IDC—EXIT=2;

当然要把它放在一个unit里(类似于C++的.h文件) ,在使用的单元里再uses一下就可以了,这样应用感觉是不是很爽呢?

txtCaption:=LoadStr(IDC—EXIT);

九.让图像旋转

篇三:Delphi开发的调试技巧

[转]Delphi开发的调试技巧

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 类过程代码补全(只要在定义部分定义一过程或一函数头则自动帮你生成

实现部分的套架;反之也成)

 

1.本站遵循行业规范,任何转载的稿件都会明确标注作者和来源;2.本站的原创文章,请转载时务必注明文章作者和来源,不尊重原创的行为我们将追究责任;3.作者投稿可能会经我们编辑修改或补充。

相关文章
  • Delphi笔记

    Delphi笔记

    2016-12-23 14:01

  • DELPHI技巧:用Delphi编写圆周率模拟器

    DELPHI技巧:用Delphi编写圆周率模拟器

    2016-08-29 13:00

  • delphi 用image 画图

    delphi 用image 画图

    2016-08-01 12:01

  • Delphi 的绘图功能[10]

    Delphi 的绘图功能[10]

    2016-06-05 16:00

网友点评