Delphi - 手把手教你基于D7+Access常用管理系统…
2019-12-11 16:00:48来源:博客园 阅读 ()
Delphi - 手把手教你基于D7+Access常用管理系统架构的设计与实现 (更新中)
前言
从事软件开发工作好多年了,学的越深入越觉得自己无知,所以还是要对知识保持敬畏之心,活到老,学到老!
健身和代码一样都不能少,身体是革命的本钱,特别是我们这种高危工种,所以小伙伴们运动起来!有没有健身撸铁,体脂现在是多少呀?明年(2019/03/22)徐州的马拉松有没有报名呀!?
扯的有点远了,接下来我将抽三天时间手把手教你基于Delphi7+Access,同时搭配第三方控件RC、AlphaControl(第三方控件主要用于美化界面),完成通用管理系统架构的设计。骚年,想想是不是还有点小激动?
涉及知识点
- Access数据库建立与关键表结构设计
- Delphi ADOConnection动态连接Access数据库
- Delphi前台fsMDIForm和fsMDIChild窗体设计
- dxBarManager方式通用菜单架构设计
- 主界面常见状态栏涉及与动态更新(软件版本信息、时间状态信息、登录组信息、滚动信息、当前时间...)
- Delphi通用登录界面设计及主界面载入交互
- MD5方式验证和保存密码
- 动态窗体菜单列表(打开窗体事件、销毁窗体事件)
- RzCheckTree方式设计常见用户权限
- imageList图表库
- 第三方控件:RC、AlphaControl皮肤控件
看到这么多知识点是不是感觉有点晕啊!
没关系,接下来我们一步一步实现!注意我们的口号,保持对知识的敬畏之心!
整体设计方案
这个是我们系统实现部分的一个设计方案,因为系统是通用的嘛,所以这里我就叫它Common Management System了,下面简称CMS。
这里暂不做DFEMA和PFEMA的深层次分析,有BUG的系统才是好系统,不然还要开发和维护人员做什么?(客户小姐姐:呸,渣男!)
项目实现
骚年,扶好了,我要教你开车了, 啊呸,我要教你开发了。
Access数据库建立与关键表结构设计
创建一个Access文件,命名为DataX.mdb,再创建两张表,分别命名为sysUser和sysUserAuthority,其中ID栏位自动生成,VDate栏位为日期格式,其余栏位均为长文本根式,并添加如下数据,如下图。
Delphi ADOConnection动态连接Access数据库
启动Delphi7,新建一个项目,分别命名为:工程文件命名为:CommonManagementSystem.dpr,单元文件命名为:uMain.pas,主窗体命名为:MainFrm。
然后保存,注意文件的保存位置,因为接下来连接Access数据库时需要根据相对路径来,参考下图。
然后,在主窗体上放一个ADOConnection控件,命名为conMain。接下来在工程onShow事件中写如下代码:
1 procedure TMainFrm.FormShow(Sender: TObject); 2 begin 3 // 动态连接Access数据库 4 try 5 Screen.Cursor := crSQLWait; 6 ChDir(ExtractFilePath(Application.ExeName)); 7 ChDir('..'); 8 try //动态加载数据库 9 conMain.Connected := False; 10 conMain.ConnectionString := 'Provider=Microsoft.Jet.OlEDB.4.0;Data Source=' + GetCurrentDir + '\DataX\DataX.mdb' + ';User ID=admin;Password=;Persist security Info=False'; 11 conMain.Connected := True; 12 conMain.LoginPrompt := False; 13 statusPaneAccess.Caption := '数据库已连接';//状态栏控件statusPane 14 Screen.Cursor := crDefault; 15 except 16 Screen.Cursor := crDefault; 17 statusPaneAccess.Caption := '数据库未连接'; 18 MessageDlg('数据库连接失败,请确认!', mtError, [mbOK], 0); 19 end; 20 Screen.Cursor := crDefault; 21 except 22 statusPaneAccess.Caption := '数据库未连接'; 23 MessageDlg('数据库连接失败,请确认!', mtError, [mbOK], 0); 24 end; 25 end;
OK,到这里工程动态连接Access数据库的功能已经实现了。
骚年,是不是感觉很简单,是的,你没有看错,跟着我一步步做,就是so easy!(??,不要忘记我们的口号)其实复杂的功能都是通过简单的功能组合起来的!所以,加油吧!骚年!
Delphi前台fsMDIForm和fsMDIChild窗体设计
OK,回到主界面,在对象控制面板中选中MainFrm,单击F11,在属性控制面板中设定WindowState属性设置为wsMaximized,FormStyle属性设置为fsMDIForm,后续再建立的From,FormStyle属性都设置为fsMDIChild。
dxBarManager方式通用菜单架构设计
拖一个dxBarManager控件到主界面,命名为dxbarManagerMain,双击该控件打开Toolbars界面,New两个Toolbar分别为菜单和快捷工具条,如下图。
- 在控件Commands界面新增Categories分别为主菜单、系统设置和窗口
- 在主菜单下建立dxBarSubItem类型的菜单系统设置和窗口
- 在系统设置菜单下建立dxBarButton类型的菜单系统权限设置和帮助
- 在窗口菜单下建立dxBarButton类型的菜单窗口平铺、窗口层叠和窗口垂直,和dxBarListItem类型的菜单窗口列表
注意:这里的菜单类型不能选错!!!
注意:这里的菜单类型不能选错!!!
注意:这里的菜单类型不能选错!!!
OK,菜单设计好之后,我们选中dxbarManagerMain控件,单击F11,设置Style为bmsFlat。然后双击打开控件,选中Toolbars中菜单,单击F11,分别设置IsMainMenu、MultiLine和OneOnRow属性为True。如下图。
OK,接下来,拖动菜单完成菜单架构设计,快捷工具条暂时不用,后续我们再介绍,请看下图。
主界面常见状态栏涉及与动态更新(软件版本信息、时间状态信息、登录组信息、滚动信息、当前时间...)
鼠标点击主界面空白处,单击右键选择 Add a Status Bar,添加一个statusBar控件,命名为statusBarMain,然后选中statusBar,右键单击New一些控件,分别设置其名称、对齐方式、Caption等。
最终效果,如下:
OK,今天就到这里了,明天,我们继续!骚年,注意关注、收藏、推荐,不要迷了路!!!
Delphi通用登录界面设计及主界面载入交互
>>>
MD5方式验证和保存密码
>>>
动态窗体菜单列表(打开窗体事件、销毁窗体事件)
>>>
RzCheckTree方式设计常见用户权限
>>>
imageList图表库
>>>
第三方控件:RC、AlphaControl皮肤控件
>>>
任何疑问、建议、意见请留言或者私信我哦~~~~
作者:Jeremy.Wu
出处:https://www.cnblogs.com/jeremywucnblog/
本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利。
原文链接:https://www.cnblogs.com/jeremywucnblog/p/12022001.html
如有疑问请与原作者联系
标签:
版权申明:本站文章部分自网络,如有侵权,请联系:west999com@outlook.com
特别注意:本站所有转载文章言论不代表本站观点,本站所提供的摄影照片,插画,设计作品,如需使用,请与原作者联系,版权归原作者所有
- Delphi10.3的ListView学习(大图标) 2020-06-05
- Delphi10.3的SpeedButton/BitBtn学习 2020-06-05
- Delphi10.3状态栏上显示进度条/图片 2020-06-02
- Delphi10.3下自带系统托盘 TrayIcon的使用 2020-06-01
- delphi10.3安装使用mySQL 2020-05-31
IDC资讯: 主机资讯 注册资讯 托管资讯 vps资讯 网站建设
网站运营: 建站经验 策划盈利 搜索优化 网站推广 免费资源
网络编程: Asp.Net编程 Asp编程 Php编程 Xml编程 Access Mssql Mysql 其它
服务器技术: Web服务器 Ftp服务器 Mail服务器 Dns服务器 安全防护
软件技巧: 其它软件 Word Excel Powerpoint Ghost Vista QQ空间 QQ FlashGet 迅雷
网页制作: FrontPages Dreamweaver Javascript css photoshop fireworks Flash