您好,欢迎访问三七文档
当前位置:首页 > 临时分类 > DELPHI编程技巧集锦
DELPHI编程技巧集锦(1)董占山(中国农科院棉花研究所,河南安阳,455112)美国著名的《Delphi开发者杂志(DelphiDeveloper'sJournal)》是世界上众多Delphi程序员必读的专业杂志,在国内我们很少有机会读到这份优秀的专业刊物,但是我们可以在Inprise公司()的网页上看到该杂志刊登的一些优秀文章。同时,还可以通过电子邮件订阅该杂志免费提供的Delphi使用技巧,订阅网址为。笔者从中筛选出一些十分有用的Delphi使用技巧和文章,编译出来,与广大Delphi爱好者分享。有什么意见和建议可以直接给笔者发电子邮件(dzs@126.com)。读者请注意,本文中的内容多以Delphi4为例进行介绍,请使用其他版本的读者根据实际情况灵活运用。一、Delphi集成环境与代码调试A修改Delphi的系统信息默认的Delphi消息、警告和例外描述都是英文的,将这些内容翻译成另一种语言或修改它们使其适合你的需要的最简单方法是编辑资源文件并改变相应的字符串,这些文件位于BIN目录。主要资源文件有:SysUtils单元的信息(文件没有找到、转换错误信息等)在sysutils.res中,数据库错误信息在dbconsts.res中,VCL信息在consts.res中。注意一些字符串使用格式字符,如%s或%d,来产生最终的字符串,在这种情况下,应将这些字符保留在适当的位置。B如何清除无用代码Delphi提供了自动清除源代码中无用代码的强大功能,一般来说,当你保存文件时,Delphi自动将源代码中空的类方法删除,保证了源代码的清洁。在没有编译和保存文件的前提下,也可以清除无用代码,方法是:在Delphi3/4中单击“File”*“SaveAs...”菜单命令(在Delphi1/2中单击“File”*“SaveFileAs...”菜单命令),打开“SaveAs...”对话窗口,单击“取消”按钮即可。C在Delphi4集成环境中不使用浮动功能你无疑知道Delphi4集成环境支持大多数窗口的浮动功能。但是,有时你不想让一个窗口具有浮动功能。浮动窗口在需要时,十分有用,但在不需要时,也十分恼人。有两种方法可以改变一个窗口的浮动属性。第一种方法是:每个可浮动窗口具有一个本地菜单项目---Dockable,如果你不希望一个特定的窗口具有浮动功能,简单地用鼠标右键单击窗口,选空Dockable菜单项目。这个窗口的浮动功能就关闭了,直到你再选中Dockable项目为止。这一技术可以防止特定的窗口可停靠。但有时,你仅仅希望暂时关闭浮动功能,这时,只需要按下Ctrl键,再拖动窗口。D在工具菜单中添加项目在Delphi集成环境中按F1键可以打开多数Delphi帮助标题,这种方法可以快速打开相关标题的帮助窗口。但是这种快速方法对第3方工具和常问问题(FAQs)是不可用的,Delphi提供了一个变通的方法,使在集成环境下快速打开这些工具成为可能。在工具菜单添加用户项目的方法是:单击“Tools”*“ConfigureTools”命令,打开一个包含所有可用工具列表的对话窗口,单击“Add”按钮,打开“ToolProperties”对话窗口,分别设置4个编辑框,然后单击“Ok”按钮,再单击“Close”按钮,完成设置。E设置条件断点一般来说,大家都会使用断点来调试程序,但是如何使用条件断点来调试程序呢?条件断点,顾名思义,就是指需要满足一定条件时的断点。这种断点在调试很长的For或While循环时十分有用,当你只希望看一看一个特定循环的执行情况而非所有循环时,就需要在循环中设定一个条件断点,当设定的条件满足时,Delphi停止应用程序的执行。设置条件断点的方法是:按常规的方法建立断点,单击“View”*“DebugWindows”*“Breakpoints”命令,弹出一个断点列表窗口,用鼠标右键单击欲设置为条件断点的断点,在快捷菜单中单击“Properties”命令,打开一个断点编辑窗口,在这个窗口的条件域中输入一个逻辑表达式即可。在调试程序时,Delphi判断这个逻辑表达式,当逻辑表达式为真时,就中断程序运行,返回代码窗口。F不要让集成调试器打断调试过程在调试程序时,Delphi的集成调试器监视一切运行时错误。当调试器发现一个运行时错误时,Delphi中断应用程序并返回到设计状态,并显示一个错误信息窗口。当关闭错误信息窗口后,需要按Ctrl-F2重新开始启动程序,或者按F9继续运行程序。无疑,Delphi集成调试器是十分有用的,但有时也让人烦恼。能否暂时关闭集成调试器呢?可以。使用下面的方法可防止集成调试器中断应用程序:1单击“Tools”*“EnvironmentOptions...”菜单命令;2单击“Preferences”对话页标签;3选空“Integrateddebuggingoption”复选框;4单击“Ok”完成操作。这样当你在集成环境下调试应用程序时,Delphi的集成调试器探测到运行时错误时,就不再切换到设计状态并显示错误信息了。G调试Delphi3/4集成环境的插件在Delphi1中,要调试集成环境的插件/专家是十分困难的。Delphi3/4提供了调试DLL的能力,从而简化了这项工作。第一步,保证插件/专家没有包括在Windows注册表的插件/专家列表中,然后,启动Delphi3/4并装载需要调试的专家DLL,修改注册表,使Delphi3/4能够调用这个DLL;第二步,单击“Run”*“Parameters”菜单命令,打开“RunParameters”对话窗口,单击“Local”对话页上的“HostApplication”编辑框右边的“Browse”按钮,查找“Delphi32.exe”程序的位置(本例为C:\ProgramFiles\Borland\Delphi4\Bin\delphi32.exe);第三步,运行待调试的DLL,将启动Delphi的第二个实例,并装载要调试的DLL,允许对其进行调试。二、窗体设计的相关技巧A透明象素点当将一个image图象,一般为BMP文件,放到一个TBitBtn上时,图片左下角的一个象素点决定图片中的哪种颜色为透明色。图片上任何具有这种颜色的象素点,在按钮上都是透明的。假如不希望图片上的任何象素点是透明的,就需要将图片左下角的这个象素点的颜色设置为不同于图片上任何象素点的颜色。B自动调整窗体的分辨率创建应用程序时,总是依监视器的分辨率进行的,其缺点是:假如在较高分辨率下设计应用程序,它可能大于用户的有效屏幕大小,在用户使用程序时,就不能显示出全部窗体内容,给用户带来不便。一种简单的解决办法是:在程序运行时,让Delphi自动添加滚动条来解决这个问题。但是,使用Delphi的自动调整比例过程将产生更加专业的结果。在运行时,Delphi获得系统的屏幕分辨率,并将结果保存在应用程序的Screen对象的PixelsPerInch属性中,然后,使用这个属性的值将窗体调整到当前分辨率。记住,为了有效地使用这项技术,需要设置窗体的Scaled属性为真,并且只用TrueType字体,如果开发程序时,使用了Windows的小字体,应将窗体的AutoScroll属性设置为假(FALSE)。C为控制设置一种自定义颜色窗体和各种控制都具有一个Color属性,当你选择它们的Color属性时,可以在列表框中选择一种Windows系统默认的各种颜色,也可以建立一种自定义颜色,使它们显得与众不同。为窗体或控制设定自定义颜色的步骤如下:1双击组件的Color属性,弹出颜色对话窗口;2选择一种最接近你想要的基色;3单击“DefineCustomColors”按钮,颜色对话窗口将扩展,显示出一个色谱区域;4使用十字光标在这个色谱区域选择你想要的颜色,然后单击“AddtoCustomColors”按钮;这样你选定的特定颜色就被添加到颜色对话窗口中了;5单击“Ok”按钮,就将刚定义的颜色应用到选定的控件了。D缩小步长大多数程序员在设计窗体时喜爱“(靠到格线)Snaptogrid”功能,可以节省安置组件的时间,但是,有时你还需要微调其位置和大小。其一:将组件在窗体上一次移动一个象素点。首先,选中你想移动的组件,然后,按下Ctrl键不放,按光标键,选中的控制将一次移动一个象素点,方向与光标键所指方向相同。其二:每次按一个象素点调整控制的大小。选中控制,按下Shift键不放,按光标键,根据光标键所指方向不同,选中的控制每次放大或缩小一个象素点。E控制滚动条的有效方法TForm的HorzScrollBar和VertScrollBar属性使用Tracking子属性来管理窗体的显示,Tracking属性是一个布尔型属性。若此属性设置为真,窗体随用户拖动滚动条而移动;若此属性设置为假,窗体不随用户拖动滚动块而移动,只有用户释放滚动块时才移动。这种差别对查看列表和图象的用户十分重要。如果要平滑地显示列表和图象,将Tracking属性设置为真,但当图象或列表信息特别复杂时,窗口的滚动特别地缓慢。如果要快速显示列表和图象信息,将Tracking属性设置为假,这样窗口的滚动就会加快,但是由于不能看到实际位置,所以使用时难以掌握。除了TForm以外,TScrollBox组件也使用Tracking属性来管理其显示内容。F选择合适的组合框Delphi提供了5类组合框,它们具有相同的特性,但是也有不同的特点。了解其间的差别,可帮助程序员根据需要选择合适的组合框类型。所有的组合框都是一个列表框和编辑框的组合,用户可以在列表框中选择或在编辑框中直接输入值。当用户从列表框中选择时,这个条目将显示在编辑框中。5类组合框的不同特性决定了它们的显示和与用户交互的方式。下表列出了5种类型组合框的的独有特征。表1格式描述格式说明Simple这种格式就是列表框上显示一个编辑框,用户可以从列表框中选取条目,也可以直接在编辑框中输入文本Drop-down除了列表框开始不显示外,其他特性均类似于simple格式。在编辑框的左边有一个下拉按钮,单击可以打开列表框,从中选取条目;也可在编辑框中直接输入项目。Drop-downlist这是组合框中限制条件最多的一种,显示格式类似于drop-down,开始时列表框不显示。用户单击下拉按钮打开列表框并从中选取条目,但是不能在编辑框中直接输入文本。OwnerDrawFixed这种组合框类似于Simple类,不同的是其列表框中的条目高度是根据用户在ItemHeight定义的值而设置的。OwnerDrawVariable这种组合框类似于OwnerDrawFixed类,特点是列表条目的高度是可变的。当窗体上有足够的空间和列表很短时,使用Simple格式的组合框较为合适。否则,使用Drop-down格式的组合框。当想让用户只能从预定义项目中选取条目时,用Drop-downlist格式的组合框。需要可变高度列表项时,使用后两种。G使非可视组件易于辨认非可视组件没有标题属性,一个窗体中多个同类非可视组件时,由于它们看起来一模一样,故难以辨认。DELPHI提供了一种变通的方法,就是将非可视组件的名称放置在组件图标之下,使它们易于辨认。设置方法如下:1单击“Tools”*“EnvironmentOption”,弹出一个对话窗口;2单击“Preferences”标签,切换到Preferences对话页;3选中“Showcomponentcaptions”复选框;4单击“Ok”完成。这时,在当前的设计窗体上,就可以看到每个非可视组件下显示出一个标签。这个选项设置之后,对所有窗体都是有效的。H标签的加速键对含有Caption属性的组件,添加快捷键是比较容易的,只需在Caption属性中特定字符前加上“&”符号即可。那么,怎样给没有Caption属性的控制添加快捷键呢?现以给一个TMemo控制添加快捷键为例说明如下:在窗体
本文标题:DELPHI编程技巧集锦
链接地址:https://www.777doc.com/doc-6237662 .html