1、 用 C+语言来做个人事务助理 第- 1 -页 共 18 页- 1 -用 C+语言来做个人事务助理学生姓名 指导老师: 摘 要 本课程设计主要实现了一个简单的个人事务助理的工具。它白日做梦了个人日常账务的录入、查看和统计的功能,可用于简单的个人账务管理;并且提供了地址簿的功能,可用于记录和查询通信方式。在课程设计中,系统开发平台为 Windows XP,程序设计设计语言采用 Visual C+6.0,程序运行平台为Windows 98/2000/XP。 。程序通过调试运行,初步实现了设计目标,并且经过适当完善后,以后将可以在实际应用中解决问题。关键词 程序设计; Access 数据库;VC+6
2、.01 引 言1.1 课程设计目的在程序设计中,可以用两种方法解决问题:一是传统的结构化程序设计方法,二是更先进的面向对象程序设计方法。而在面向对象程序设计中关键是如何将问题域中的实体(即日常所见的概念)抽取出来,作为 C+程序中的类,而属性与行为作为类的两类要素通常是必不可少的,甚至还应考虑类必须满足的约束。1.2 关于 C+Visual C+6.0 是 Microsoft 公司在 1998 年推出的基于 Windows 9X 和Windows NT 的优秀集成开发环境。该环境为用户提供了良好的可视化编程环境,程序员可以里利用该开发环境轻松地访问 C+源代码编辑器,资源编辑器和使用内部调试器
3、,并且可以创建项目文件。Visual C+6.0 不仅包括编译器,而且它还包括许多有用组件,通过这些组件的协同工作,可以在 Visual C+6.0 集成环用 C+语言来做个人事务助理 第- 2 -页 共 18 页- 2 -境中轻松地完成创建源文件,编辑资源,以及对程序的编译,连接和调试等各项工作。VC+6.0 是 Windows 95/98、XP 或 Windows NT 下的一个应用程序,本身对软硬件没有特殊要求。就是说它对环境的要求与 Windows 95/98、Windows NT 要求是一致的。硬件要求:一般在 586 以上的处理器、16MB 以上内存、100MB 以上的硬盘。软件要
4、求:Windows 95/98 或 Windows NT3.51 以上版本。VC+ 6.0 系统可以在一张 CD 盘上,也可以在 “Visual Studio( Visual C+、 Visual Foxpro)”等产品的第一张 CD 盘上。一般都有一个 VC 的自动安装程序,也可以执行 VC6 目录下的 setup.exe,在安装包的提示下进行,对初学者可采用“典型安装”方式。在安装好 VC 6.0 系统后,有时根据需要添加或删除某些部件,可插入 CD 盘重新执行 setup.exe 安装程序,安装程序会检测当前系统安装 VC6 的足件,用户单击“添加删除”按钮后,在“安装维护”对话框中选定
5、要添加的部件或撤消选定要删除的部件。与一般的应用软件一样,有以下两种启动方式:1通过“开始”按钮,选择“程序”菜单,然后打开“Microsoft Visual studio 6.0 中文版 ”子菜单中的“Microsoft Visual C+ 6.0 中文版”程序。2用户也可以使用命令行启动 VC。单击“开始” 按钮后选择“运行”命令,在“运行”对话框中输入 c:Program FilesMicrosoft Visual StudioVC98VC6.exe(按默认盘符和路径安装)即可。1.3 Access 数据库美国 Microsoft 公司于 1994 年推出的微机数据库管理系统,它具有界面
6、友好、易学易用、开发简单、接口灵活等特点,是典型的新一代桌面数据库管理系统。其主要特点如下:(1)完善的管理各和数据库对象,具有强大的数据组织、用户管理、安全检查等功能。可以方便地生成各种数据对象,利用存储的数据建立窗体和报表,可视性好。用 C+语言来做个人事务助理 第- 3 -页 共 18 页- 3 -(2)作为 Office 套件的一部分,可以与 Office 集成,实现无缝连接。(3)能够利用 Web 检索和发布数据,实现与 Internet 的连接。Access 主要适用于中小型应用系统,或作为客户机/服务器系统中的客户端数据库。(4) 可以更轻松地揭示复杂脚本的界面项,这就意味着只需
7、通过简单的单击操作,即可实现特定语言对象中读取方向的从左到右到从右到左的切换; 处理窗体和报表的方式更为简便。(5) 当用户进行记录导航、关闭窗体或选择命令时,现在可以让 Access 项目对所有数据项进行批处理,然后将其发送给服务器。也可在窗体上创建按钮,以通过编程方式保存所有记录或撤消对记录的所有更改。1.4 配置需求本系统开发需求的硬件有:CPU 为 400MHZ 以上;硬盘数据量最小配置为20G;计算机内存要求为 128M 以上。2 系统分析2.1 可行性分析现在时间行进到 21 世纪,以计算机技术为主体的高新技术群体已经将触角深入到国发经济的方方面面。在市场经济的大环境下,越来越多的
8、人士逐渐认识到用计算机技术进行名类管理,交流的便捷。应用之一就是平时的个人事务助理。在计算机网络,数据库和先进的开发平台上,利用现有的软件,配置一定的硬件,开发一个具有开放体系结构的、易扩充的、易维护的、具有良好人机交互界面的个人事务助理,实现了简单的个人账务管理,并且提供了地址簿的功能,可用于记录和查询通信方式。3 系统总体设计3.1 系统目标设计用 C+语言来做个人事务助理 第- 4 -页 共 18 页- 4 -(1)大大节约了时间,提高了效率;(2)通过全面的信息采集和处理,辅助用于个人管理账务;(3)使用该事务查询工具,可以迅速实现个人信息查询,给用户提供了诸多的方便。3.2 系统常用
9、函数表 3-1 常用函数表函数声明 功能声明CDialog:UpdateData(); 用于将控件中的数据转储之关联变量CString:Format() 将数据转化为字符串。MessageBox()及 AfxMessageBox() 进行消息提示。CRecordset:IsEOF() 判断记录集是否为空CString:Empty()和 CString:TrimLeft() 分别用来清空该字符串和除去字符串右边的空格。3.3 系统功能分析此仓库管理系统需要完成功能主要有以下几点: 程序运行进入登录主界面。 经过用户验证进入个人事务助理系统。 系统分为两个主要功能,主要查询客户消费与客户地址情况。
10、 利用各种方式查询各种客户信息。3.4 系统功能模块设计在系统功能分析的基础上,考虑到 VC+编制的特点,得到如图 3.2 所示的系统功能模块: 登录模块,响应“登录”按钮的函数如下用 C+语言来做个人事务助理 第- 5 -页 共 18 页- 5 -void CLoginDlg:OnOK() / TODO: Add extra validation hereUpdateData();if(m_user=“张誉文“)if(m_password=“267275927“)AfxMessageBox(“欢迎使用!“);CDialog:OnOK();elseAfxMessageBox(“密码错误!“);
11、elseMessageBox(“对不起,我不能为您服务!“,“提示“,MB_OK|MB_ICONINFORMATION); 登录成功后进入主操作界面,响应提交按钮代码如下BOOL CMoneyEditDlg:SaveToDb()p_Database = new CDatabase;p_Database-SetLoginTimeout(5);BOOL p_Status = FALSE;try用 C+语言来做个人事务助理 第- 6 -页 共 18 页- 6 -p_Status = p_Database-Open(“Assistant“);if(p_Status)TRACE(“nDB opened
12、successfullyn“);elseTRACE(“nOpen DSN failed.n“);catch(CMemoryException* pEx)pEx-ReportError();catch(CDBException* pDBEx)pDBEx-ReportError();TRACE(“RetCOde:%d strError:%d strState: %dn“,pDBEx-m_nRetCode,pDBEx-m_strError,pDBEx-m_strStateNativeOrigin);if(!p_Status)MessageBox(“Open DSN Failed.“);if(p_Da
13、tabase-IsOpen()p_Database-Close();if(p_Database != NULL) delete p_Database;用 C+语言来做个人事务助理 第- 7 -页 共 18 页- 7 -return FALSE;p_Record = new CMoneyRecord(p_Database);if(!p_Record-Open(AFX_DB_USE_DEFAULT_TYPE,(LPCTSTR)“Account“)MessageBox(“Open Table SiteData Failed.“);if(p_Record-IsOpen() p_Record-Close
14、();if(p_Database-IsOpen()p_Database-Close();delete p_Record;delete p_Database;return FALSE;p_Record-AddNew();p_Record-m_ID = GenerateID();p_Record-m_Type = m_strType;p_Record-m_Sum = m_nSum;p_Record-m_Date = m_Date;p_Record-m_Comments = m_strComments;p_Record-Update();if(p_Record-IsOpen() p_Record-C
15、lose();if(p_Database-IsOpen() p_Database-Close();用 C+语言来做个人事务助理 第- 8 -页 共 18 页- 8 -delete p_Record;delete p_Database;return TRUE; 登录成功后,进入主界面,响应查询按钮BOOL CMoneyViewDlg:QueryFromDb()p_Database = new CDatabase;p_Database-SetLoginTimeout(5);BOOL p_Status = FALSE;tryp_Status = p_Database-Open(“Assistant“
16、);if(p_Status)TRACE(“nDB opened successfullyn“);elseTRACE(“nOpen DSN failed.n“);catch(CMemoryException* pEx)pEx-ReportError();catch(CDBException* pDBEx)用 C+语言来做个人事务助理 第- 9 -页 共 18 页- 9 -pDBEx-ReportError();TRACE(“RetCOde:%d strError:%d strState: %dn“,pDBEx-m_nRetCode,pDBEx-m_strError,pDBEx-m_strStat
17、eNativeOrigin);if(!p_Status)MessageBox(“Open DSN Failed.“);if(p_Database-IsOpen()p_Database-Close();if(p_Database != NULL) delete p_Database;return FALSE;p_Record = new CMoneyRecord(p_Database);p_Record-m_strFilter = m_strFilter;if(!p_Record-Open(AFX_DB_USE_DEFAULT_TYPE,(LPCTSTR)“Account“)MessageBox
18、(“Open Table SiteData Failed.“);if(p_Record-IsOpen() p_Record-Close();if(p_Database-IsOpen() p_Database-Close();用 C+语言来做个人事务助理 第- 10 -页 共 18 页- 10 -delete p_Record;delete p_Database;return FALSE;m_listMoney.DeleteAllItems();CString str;if(!p_Record-IsBOF()while(!p_Record-IsEOF()int i = m_listMoney.InsertItem(0,p_Record-m_Type);str.Format(“%d“,p_Record-m_Sum);m_listMoney.SetItemText(i,1,str);m_listMoney.SetItemText(i,2,p_Record-m_Date.Format(“%Y-%b-%d“);m_listMoney.SetItemText(i,3,p_Record-m_Comments);p_Record-MoveNext();m_listMoney.UpdateWindow();/
Copyright © 2018-2021 Wenke99.com All rights reserved
工信部备案号:浙ICP备20026746号-2
公安局备案号:浙公网安备33038302330469号
本站为C2C交文档易平台,即用户上传的文档直接卖给下载用户,本站只是网络服务中间平台,所有原创文档下载所得归上传人所有,若您发现上传作品侵犯了您的权利,请立刻联系网站客服并提供证据,平台将在3个工作日内予以改正。