delphi7经典教程
更新时间:2023-11-14 09:22:01 阅读量: 教育文库 文档下载
软件程序编制规范
3.2、软件程序编制规范
3.2.1、编制程序:根据系统分析要求编制程序,要求实现代码的复用、算法的优化、程序代码的优化、发现数据库设计不合理的及时反馈,减少循环嵌套,基础数据避免重复更新,保证进入的数据就是齐全的、正确的。
3.2.2、程序自测:负责按测试方案进行自测,交付测试的程序不能出现不能正常运行、未按公式计算的简单错误。
3.2.3、程序测试:将完成的程序转系统分析人员按测试方案测试。 3.2.4、开发工具的程序编制规范:详见详细规范。
3.2.5、.net编程规范
一.安装方法:
1、 安装IIS与frontpage扩展:点击控制面板,点击添加删除程序,选择添加删除WINDOWS组件,选
择应用程序服务器。点击详细信息,选择internet信息服务IIS,点击详细信息,选择frontpage 2002 server extensions与internet信息服务管理器,按向导提示点击下一步,然后放入系统盘。 2、 要在防火墙退出的环境下进行安装,把网线拔掉。
3、 放入第一张光盘,他会提示安装.net必备,放入第三张光盘,根据向导提示安装。安装完第一张、
第二张就可以运行.net了.第四、五、六张为MSDN帮助文件。(07.02.06添加)
3.2.6、Delphi7.0编程规范
第一部分:软件安装与控件安装方法
一、软件安装:光盘或网络安装后,将光盘CRACK目录下dent.slip拷贝到安装路径下。未注册信息将不再显示。
二、基本安装:
1、对于单个控件,Componet-->install component..-->PAS或DCU文件-->install; 2、对于带*.dpk文件的控件包,File-->Open(下拉列表框中选*.dpk)-->install即可; 3、对于带*.bpl文件的控件包,Install Packages-->Add-->bpl文件名即可; 4、如果以上Install按钮为失效的话,试试Compile按钮;
5、是run time lib则在option下的packages下的runtimepackes加之。如果编译时提示文件找不到的话,一般是控件的安装目录不在Delphi的Lib目录中,有两种方法可以解决: 1、反安装的源文件拷入到Delphi的Lib目录下;
2、或者Tools-->Environment Options中把控件源代码路径加入到Delphi的Lib目录中即可。 注意:所安装的控件是否与你所用的Delphi版本相适应。 三、控件删除:
在Component/Install Packages中删除。 选Component/configure Palette? 有pages和components两个区域
双击components区域,选中要删除得控件,下面有得Delete按钮 但系统提供的控件只能Hide,不能delete。
打开控件所在的包文件(*.dpk),从中删除控件那个文件,再重新编译该包即可 如果是整个控件包都要删除的话,project->Option->Packages,删掉那个packages 四、详细控件安装 1、 Ehlib控件
第 1 页 共 22 页
运行Ehlib.v3.4.for.Delphi5678\\Ehlib v3.4\\Delphi7\\DclEhLib70.dpk文件,在弹出窗口中点击Conpile,再点击install,提示安装成功后在Delphi—Tools—Environment Options—Library—Library Path中添加路径Ehlib.v3.4.for.Delphi5678\\Ehlib v3.4\\Delphi7\\ 2、 Fastreport 控件
分别运行fastreport 2.53\\source\\fr7.dpk, fastreport 2.53\\source\\ado\\ FRADO7.dpk, fastreport 2.53\\source\\BDE\\FRBDE7.dpk, fastreport 2.53\\source\\DBX\\FRDBX7.dpk
fastreport 2.53\\QueryBuilder\\Source\\dclOQB70.dpk
fastreport 2.53\\QueryBuilder\\Source\\ADO\\dclOQBADO70.dpk fastreport 2.53\\QueryBuilder\\Source\\BDE\\dclOQBBDE70.dpk fastreport 2.53\\QueryBuilder\\Source\\DBX\\dclOQBDBX70.dpk,
fastreport 2.53\\QueryBuilder\\Source\\IBX\\dclOQBIBX70.dpk文件, 在弹出窗口中点击Conpile,再点击install;
安装完毕后,在Delphi—Tools—Environment Options—Library—Library Path中添加路径: fastreport 2.53\\source fastreport 2.53\\source\\ado fastreport 2.53\\source\\bde fastreport 2.53\\source\\dbx fastreport 2.53\\source\\ibx
fastreport 2.53\\QueryBuilder\\Source fastreport 2.53\\QueryBuilder\\Source\\ado fastreport 2.53\\QueryBuilder\\Source\\bde fastreport 2.53\\QueryBuilder\\Source\\dbx fastreport 2.53\\QueryBuilder\\Source\\ibx 3、Raize控件
分别运行Raize\\RC3\\Source\\Rz30Ctls_Dsgn70.dpk,Raize\\RC3\\Source\\ Rz30DBCtls_Dsgn70.dpk,在弹出窗口中点击Compile,再点击install;安装完毕后,在Delphi—Tools—Environment Options—Library—Library Path中添加路径:Raize\\RC3\\Source 4、VirtualTreeview控件
VirtualTreeview4.0.12\\VirtualTreeview\\Packages\\VirtualTreesD7D.dpk文件,在弹出窗口中点击Compile,再点击install;安装完毕后,在Delphi—Tools—Environment Options—Library—Library Path中添加路径:VirtualTreeview4.0.12\\VirtualTreeview\\Packages 5、xlreport控件
分别运行xlreport\\xlr4pro123.exe和xlreport\\xlr4dfull123.exe,注意安装过程中只保留delphi7和demo两个选项即可,安装完毕后将安装路径下的AfalinaSoft\\XL Report 4\\Source文件夹的所有文件拷到AfalinaSoft\\XL Report 4\\d7units中,运行d7XLR4_D.dpk文件;同样将
AfalinaSoft\\ProOptionPack\\Source内的所有文件拷到AfalinaSoft\\ProOptionPack\\d7units中,运行d7OPack.dpk文件
五、第三方控件的下载与安装:用到的第三方控件在了解其用途后,经主任审批后,方可进行安装。 六、控件功能的学习方法:凡第三方提供的控件均有DEMO的演示示例,可根据所学知识查看其属性设置及事件,运行演示结果,便可学习控件的功能,领会其功能,做到灵活运用。 七、将经常用到的控件直接拖动放在前面,使用起来比较方便。
第 2 页 共 22 页
第二部分: 程序设计要求:
一、所有代码必须有注释。所有代码单行的注释用(//),多行的注释用{},注释用中文。每段程序的注释说明要简洁明确,说明程序编制的目的及主要功能,按照系统分析文件的功能节点进行分段注释。每段开头与结尾分别用一行’/’包括。在每个功能段内部根据具体情况进行分段注释,每段开头与结尾分别用一行’/’包括。
1、程序(unit)头的注释:标明对应的系统分析文件名和最早开始编制时间。
2、 函数(过程)(function, procedure)头的注释内容包括: (1)函数(过程)的目的(purpose)。
(2)函数(过程)返回值(结果集)(return value)的类型及含义(程序标准事件不用标明)。 (3)函数(过程)参数(parameters)的类型及含义列表(程序标准事件不用标明)。 (4)函数(过程)中使用的临时变量(var)的类型及含义列表。 二、所有项目、窗口、单元、控件、菜单等按照命名规范命名。 1、项目命名:“P”+项目描述的第一个声码。
2、Form命名:使用系统分析文件的程序名拼音头字母命名窗口。如结存查询,窗口命名为jccx.再往下一级延伸的,在上级窗口名后加能区分要求的拼音头字母来命名。 3、Unit命名:Unit的名称(name)用字母U后跟相应的Form名称。
4、自定义过程、函数(procedure, function)命名:使用函数目的的拼音头字母命名。 5、简单变量、参数命名:使用变量含义的拼音头字母命名。
6、控件命名:一般情况下延用默认名。Query控件命名:query有复用的情况,命名时用qy1,qy2?标准命名,特定的query,命名时用“qy”+对应表名。 7、菜单命名:延用默认名,含右键菜单。
三、所有直接调用DBGridEh的录入类程序必须添加标准右键菜单。
四、所有查询类程序必须有序号、合计,合计用页脚方式,动态形成序号,必须添加标准右键菜单,窗口必须有caption,必须标明系统分析人员、程序编制人员,所有录入类、循环计算类不得出现MESSAGE框为SQL语句代码,所有编译后的程序设置的断点要清除。
五、所有窗口均按照1024X768设置,窗口显示位置为桌面居中位置(设置position属性为
poDesktopCenter),大小为占桌面屏幕的1/4为适,所有窗口必须设置为置前属性(设置Formstyle属性为fsStayOnTop),保证调用子窗口时显示在最前。
六、Dbgrideh的菜单使用右键标准菜单,包含筛选、升序、降序、多行合计、导出excel,基础库维护时还要有多行替换功能。
七、所有月份数据要形成月份表,如qcsjb、mksyjlb,并同时修改查询程序,利用通用的月份查询函数,每个月底要进行结转。
八、所有连接非SQL数据库的表(接口程序除外),必须建立SQL表,维护后导出,不允许直接读写。 九、编制程序要充分考虑输入时的出错情况:判断是否输入了空格,是否输入了不合规则的内容,判断大小写,在程序中做出判断和限制。如包装入库数据,导出VFP时必须为大写,可以直接将录入的内容转换在大写,再如进入结存数据,先判断录入的产品是否是存在的产品,否则造成结存表中的数据不正确。 十、所有单位引用统一、维护一致、显示顺序按照包装、加工、库??显示,考核汇报除外。 十一、对基础库维护信息都要记录,除记录字段更换信息外,还要求录入员和更新时间。
十二、实时计划、外贸业务、成本管理各类程序增加一级界面(点击主窗口按钮即显示的界面)时,均增加记录使用人、使用机器IP、使用计数信息,具体方法:在新增form的
onshow事件中增加程序类型(ssjh、unit1、cbgl)+‘.jrmk(self.Caption)’; onclose事件中增加程序类型(ssjh、unit1、cbgl)+‘.lkmk(self.Caption)’; 语句,用于记录模块使用信息。
十三、用程序实现的数据更改,在程序试运行前必须经主任审批,主任不在时由代理人员审批。 十四、所有录入类、查询类中的必须录入项,如没有录入必须提示,否则不能执行。
第 3 页 共 22 页
十五、所有计算类程序实现,先查看数据类型,用QY连接实现公式计算的,参照SQL函数使用方法,用DELPHI连接字段或变量计算的,参照DELPHI函数使用方法。
十六、代码必须采用缩进格式表示嵌套,多层嵌套的也遵循此规则。标准格式,如下:
缩进快捷键:CTRL+SHIFT+I为向后,CTRL+SHIFT+U为向前,选中部分块后可以直接按快捷键操作。输写各层嵌套时可先将BEGIN??END对应,然后再进行嵌套。 while do begin
if then begin
if then begin end else begin end; end else begin end; end;
十七、跳转语句语法:
1、if 语句:会计算一个表达式,并根据计算结果决定程序流程。If保留字后跟随一个生成boolean值True或False的表达式。一般用“=”作为关系运算符,比较产生一个布尔型值。当表达式为True时,执行Then后的语句。否则执行else后的代码,if语句也可以不含else部分,表达式为False时自动跳到下一行程序。If语句可以嵌套,当使用复合语句表达时,复合语句前后需加上begin??end。Else保留字前不能加“;”,而且,编译器会将ELSE语句视为属于最靠近的IF语句。必要时,须使用begin??end保留字来强迫else部分属于某一级的if 语句。 (1)、单个条件: if 条件 then
A、待执行语句单行时: 执行语句;
B、待执行语句多行时: begin 语句1? 语句2? ?? end;
(2)、选择条件:
If (条件1) and (条件2) OR(条件3)?? then (3)、ELSE使用语法:
If 条件 then 语句1 Else
语句;
(4)、以上可以多层嵌套,每个嵌套里面均遵循以上语法。 2、case语句:
第 4 页 共 22 页
Case语句适用于被判断的变量或属性是整形、字符型、枚举型或子界型时用case语句进行逻辑跳转比编写复杂的if 语句容易阅读,而且程序代码整形较快。例: Procedure Tform1.button1click(sender:Tobject); Var
Number:integer; Begin
Number:=strtoint(edit1.text); case number of
1,3,5,7,9:label2.caption:=’奇数’; 0,2,4,6,8:label2.caption:=’偶数’; 10..100: Begin
Label2.caption:=’在10到100之间’; Form1.color:=clblue; End; Else
Label2.caption:=’大于100或为负数’; END; END; END.
十八、循环语句语法:
1、repeat语句 i:=0; repeat i:=i+1; writen(i); until i=10;
2、 while 条件 do begin end;
3、升序:for i:=0 to a do/降序: for i:=a downto 0 do begin end;
十九、在应用程序中所有QY的connection设置为主FORM中的Adoconnection,所有的连接数据库设置均
在INI文件中实现。
二十、多条语句不能写在一行,一条语句过长应分行写,分行尽量做到平均、层次性与语句的完整性。例: qy2.SQL.Add('update '+bm+' set jhdh=jhdh*'+qy1.FieldByName('lb').AsString+' '+
'where rq='''+zxrq+''' and gx='+''''+ListBox1.Items[ListBox1.ItemIndex]+''' '+ 'and charindex(xm,'+''''+qy1.FieldByName('sm').AsString+''')>0');
二十一、程序流程要清晰,一条sql语句实现的功能要单一。Sql查询结果使用虚拟表保存的,使用前后清除虚拟表。
二十二、使用else语句时要避免语句过长,造成if else混乱。
二十三、多个系统调用的模块,要形成DLL文件,要有模块使用记录,更新时同步更新。
二十四、遇到需要与VFP接口的程序,要将VFP表维护好以后形成SQL表,不能直接连VFP表,导出VFP表后在原程序中使用。
二十五、sql与delphi常用函数对照、使用方法及注意事项:
第 5 页 共 22 页
正在阅读:
delphi7经典教程11-14
2018-2019年高中地理山西高考冲刺预测试卷含答案考点及解析10-22
励志人生格言02-18
人教版数学五年级上册教学目标重难点归纳11-05
生物医学伦理学(资料)04-12
妈妈的密码作文700字07-08
薛海涛三述报告02-02
机械设备工程施工方案(范本)08-11
鲁科版高中化学选修四1-3-1原电池工作原理(课时练)(学生版)08-26
2020届高三复习备考工作计划03-03
- exercise2
- 铅锌矿详查地质设计 - 图文
- 厨余垃圾、餐厨垃圾堆肥系统设计方案
- 陈明珠开题报告
- 化工原理精选例题
- 政府形象宣传册营销案例
- 小学一至三年级语文阅读专项练习题
- 2014.民诉 期末考试 复习题
- 巅峰智业 - 做好顶层设计对建设城市的重要意义
- (三起)冀教版三年级英语上册Unit4 Lesson24练习题及答案
- 2017年实心轮胎现状及发展趋势分析(目录)
- 基于GIS的农用地定级技术研究定稿
- 2017-2022年中国医疗保健市场调查与市场前景预测报告(目录) - 图文
- 作业
- OFDM技术仿真(MATLAB代码) - 图文
- Android工程师笔试题及答案
- 生命密码联合密码
- 空间地上权若干法律问题探究
- 江苏学业水平测试《机械基础》模拟试题
- 选课走班实施方案
- delphi7
- 教程
- 经典
- Joe Sanders has the most beautiful garden in our town
- POP独家解析Thom Browne 2014春夏纽约时装发布会 - 图文
- 工程造价习题集上1.1 - 图文
- 几种涂料常用的计算公式
- 奥迪驱动桥毕业设计
- 中考英语词汇训练答案5
- 2016甘肃省三校生计算机应用基础模拟试题题库
- 张弓镇婚俗“大搬亲”打油诗(史上最长打油诗)
- 大学财经应用写作答案及题目
- Pioneer9.6分析使用说明
- 第六章 时间数列分析
- 物流信息系统的结构
- 改造项目建设管理报告
- Access窗体教案
- 2014-2020年中国壬基酚行业深度研究与投资前景调研报告 - 图文
- 西安市临潼区建筑工程公司与陕西恒升房地产开发有限公司建设工程施工合同纠纷案
- 学术英语36句翻译(答案)
- 苏教版六上语文周末乐园(三)
- 试论社区计划免疫在儿童预防保健中的意义
- 人教版高中生物选修三学案:2.2.2 动物细胞融合与单克隆抗体