一 概述
在利用Delphi工作一段时间后,本人对在工作实践中的一些心得进行汇总、小结,形成本系列笔记,以期为本人后续新项目借鉴使用。
此系列笔记为本人工作小结,相关功能、用途均是为本人在此做项目时快速开始使用,不是对Delphi工具功能介绍。
二 项目环境说明如下:
开发工具:Delphi 2010
报表工具:Rave 7.7.0
数据库:MS Access Database
三 项目开始
1 建立项目
项目开始第一步,就是新建项目,其步骤如下:
1.1菜单(File—>New—>VCL Forms Applications-Delphi)新建项目,出现Form窗体。
1.2 Form命名:Formmain。
1.3 文件保存:Ctrl_s—>选择项目源代码目录-->设置Form(Formmain)对应unit命名:main。
1.4 项目保存:菜单(File—>Save Projiect As)-->设置项目/模块名称(本例:CRM.dproj,本项目编译后生成的可执行文件,就是CRM.exe)。
在新建一个项目,首先执行上面四步,其目的是:确定源代码目录、建立项目工程文件(CRM.dproj)、建立项目主文件(main.*)。通过这四步确定项目的生产基础。
2 主要控件介绍
Delphi控件很多、加上第三方组件就更多了,本人根据需要在做(信息化)项目时,基本上只使用常用控件基本,主要见如下表格
分类 | 名称 | 用途 | 说明 |
信息展示 | Label | 信息说明 | |
信息展示及输入 | Text | 信息录入 | |
信息展示及输入 | Memo | 多行信息展示及录入 | |
信息展示及选择 | Listbox | 多行信息展示 | |
信息展示及选择 | Checkbox | 复选 | |
信息展示及选择 | Radiobox | 单选 | |
信息展示及输入 | StringGrid | 表格类信息展示 | 表格信息需要控制写入 |
信息展示 | DBGrid | 表格类信息展示 | 表格信息来源于数据库 |
定时器 | Timer | 串口通信控制 | |
功能选择 | Menu | 菜单 | |
功能操作 | Button | 按钮 | |
页面布局 | Scrollbar | 页面底部,用于状态栏 | |
页面布局 | Bevel | 区域、信息分块 |
说明及注意事项:
A:如果有多个多选一,则不能使用Radiobox、而要使用RadioGroup;
B:Memo、ListBox都是针对多行信息的,Memo主要用于信息展示、ListBox则多用于需要处理的信息展示、选择;
C:Memo:宽度要设置足够宽;因为memo是根据line读取数据,如果memo不够宽、导致一行信息显示在两行,则读取信息可能会因为跨行导致读取信息不全!!!
D:慎用第三方组件:因更换开发主机等原因下、Delphi开发环境需要重新安装,可能因为第三方组件等原因导致系统无法使用。如果必须使用第三方组件,本人强烈建议将该第三方组件像源代码一样、专门存放指定位置(如:源码下建立第三方组件目录)。且在系统设计说明书标注使用的第三方组件、用途、影响、及安装方式(便于项目后期升级、运维工作)。
3 项目调测方法
代码完成:通过系统编译(Ctrl_9)查看代码是否有错误。
代码调测:主要使用下图1、2的快捷按钮。
A:通过(1)执行、退出调测。
B:通过(2)进行单步调测,其中Trace into(F7)、Step over(F8)的区别是:当前指令是执行函数/过程时,是否需要进入到函数体/过程体(F7:进入函数体/过程体,F8:不进入函数体/过程体)。
C:(3)指断点,即在需要单步执行时需要在行号处打断点。
说明:本人在调测时,经常在页面随意增加一个memo。在断点处增加将信息写入到memo的代码。由此、针对信息比较多、或比较复杂情况下,可以通过复制memo信息达到调测目的。
例如:
// 调测用,开始 ---待删除
Memo1.lines.clear;
Memo1.lines.add(……);
Exit;
// 调测用,结束 ---待删除