八 其它公用功能
1 公用参数页面
大多数系统都会有一些全局常量(或变量),如:系统路径、报表文件路径等等。一些系统会将这些功能变量放在主页面中,供各个子模块(子页面)调用。本人则是建立一个公共参数页面,将所有公共参数、通用过程放到此页面的源代码中。
放到公用参数页面内容大体包括以下内容:
A 公用常量(或变量),如:数据库文件路径;
B 公用函数(或过程),如:数据字典的名称对应代码转换,示例如下:
性别代码:男/女(对应:1/0),则可定义函数
function form_pub.data_translate(gender:string):integer;
C 临时控件,如:临时存放信息的memo等。
公用参数页面存在的目的,是为减少代码的冗余而将一些公用内容抽取出来以便调用。不建议以下情况:
A 变量传参,如:CRM系统可能会把客户编码在不同页面进行传参;
B 个性化内容或利用率较低的参数、函数(或过程)。
九 公用提示页面
实际上,本人在上一节中(公用参数页面)还有两个公用过程未进行描述,就是提示页面、或选择页面。
Delphi提供了提示页面(showmessage)和选择页面(messagebox),因本人考虑去Delphi化(就是不显示Delphi的任何提示信息,不仅仅是Delphi的错误提示),所以本人单独做了提示页面、选择页面供调用。这两个公用过程也是放到公用参数页面的。
A 公用提示页面
A.1公用提示过程示例
Procedure Tform_pub.showprompt(info:string; showtype:integer);
Begin
// info:提示信息
// showtype:信息显示颜色
Form_prompt.label_info.Caption:= info;
Form_prompt.label_info.font.Color:=clblue; //默认为蓝色
If showtype=9 then Form_prompt.label_info.font.Color:=clred; //警告信息:红色;
// 其它颜色设置
Form_prompt.showmodal;
end;
A.2公用提示过程调用示例
form_pub.showprompt('客户信息入库完成,请继续执行下一步操作',1);
form_pub.showprompt('前先录入客户编码、再执行入库操作',9);
B 公用选择页面
B.1公用选择过程代码
function Tform_pub.showselect(info:string;showtype,defultbutton:integer):integer;
begin
// info:提示信息
// showtype:信息显示颜色
// defaultbutton:默认按钮(进入页面后、按回车则执行该按钮的click事件)
Form_select.label_info.Caption:= info;
Form_select.label_info.font.Color:=clblue; //默认为蓝色
If showtype=9 then Form_select.label_info.font.Color:=clred; //警告信息:红色;
// 其它颜色设置
Form_select.buuon_cancel.setfocus;
If defaultbutton=1 then Form_select.buuon_ok.setfocus;
Form_select.showmodal;、
Showselect:= Form_select.button_id;
end;
B.2公用选择过程调用示例
If form_pub.showselect (' 删除操作后,该信息将无法恢复,您确认继续执行吗?',1,1)=0 then exit;