1、编号:0704040111 毕业论文(设计)题目 企业库存及销售管理软件开发 院 (系) 计算机与信息工程学院 专 业 信息工程 学生姓名 赵波 成 绩 指导教师 陈秀新 (职称) 讲师 2011年6月 日II 北京工商大学毕业论文(设计)诚信声明本人郑重声明:所呈交的毕业设计(论文)是我个人在导师指导下, 由我本人独立完成。有关观点、方法、数据和文献等的引用已在文中指出,并与参考文献相对应。据我查证,除了文中特别加以标注和致谢的地方外,论文中不包含其他人已经发表和撰写的研究成果,也不包含为获得其他教育机构的学位或证书而使用过的材料。 我承诺,论文中的所有内容均真实、可信。如在文中涉及到抄袭或
2、剽窃行为,本人愿承担由此而造成的一切后果及责任。毕业论文(设计)作者签名: 签名日期:2011年 6月 日摘 要企业库存销售管理系统使中小企业经营者逐渐认识到转变企业经营管理理念,改善企业经营管理模式是企业适应时代的发展急需解决的问题。现代管理,应该建立在真实、有效的数据信息基础之上,应该是一种科学的、理性的管理体制,而这种管理与经营的联系与互助,又必须依赖于计算机的强大的数据统计功能,计算机管理系统便是实际的企业进销问题与计算机强大数据统计功能相结合的产物。本系统为中小企业提供库存、销售的管理,包括员工信息、客户信息、商品信息、供应商信息。能够实现商品的入库和出库管理,以及销售情况的管理。方
3、便企业管理着管理库存和商品的流动。减轻管理人员的工作压力,避免出错,加强行业内竞争实力,不断提升企业的竞争力,也可以有更多的时间考虑如何进一步提高工效,提升公司服务质量和降低成本,做到不断改善。关键词:企业;库存;销售;管理 AbstractThe management system of inventory and sale of the enterprise makes the managers of the small and medium enterprises gradually to realize that changing the management ideas and th
4、e operation models is the problem which should be solved immediately by the enterprises for adapting to the development of the era.Modern management should base on real and effective data information, and it is a kind of scientific and rational management system. The relations and the mutual corpora
5、tions between the management and the operation must be relied on the powerful functions of the data statistics of the computers. Therefore, the computer management system is the combination of the real purchasing-selling-stock problem of the enterprises and the powerful data statistical function of
6、the computer. This system is aimed to provide the management of the stock and sales of the small and medium enterprises, including the information of the employees, customers, commodities, and the suppliers. It can achieve the goals of managing the receiving and exhausting of the commodities, and th
7、e sales of them. This system also provides an easier way for managers to effectively control the stock and the flow of the products and alleviates the stress of the mangers. What is more, it can help the employees to avoid of making mistakes, improve the competitive strengthen of its own and within
8、the industry. Therefore, by using this system, the enterprise can have more time to consider about how to improve the construction efficiency, advance the service quality and lower the cost, and continue to be evolving. Key words: enterprise; stock; sales; Management 目 录第一章 绪论11.1引言11.2国内外发展概况11.3本课
9、题的研究内容21.4本文的组织结构2第二章 软件开发的技术基础42.1程序开发工具Microsoft Visual C+ 6.042.2数据库软件 SQL Server200052.3系统需求分析6第三章 软件的总体设计73.1软件整体规划73.2开发及运行环境73.3系统功能结构83.4设计目标8第四章 软件的详细设计94.1数据库设计94.1.1数据库概要说明94.1.2主要数据表的结构94.2主窗口设计124.2.1菜单设计124.2.2状态栏设计134.2.3客户区设计174.3系统登录管理174.3.1实现目标174.3.2设计步骤174.3.3程序相关代码184.4商品销售管理22
10、4.5商品入库管理36第五章 总结与展望465.1论文总结465.2进一步的研究及展望46致 谢47参考文献48附 录49附录 翻译49中文翻译49英文原文53第一章 绪论1.1引言企业经营如逆水行舟不进则退。每一个努力发展的企业都明白,先进管理的重要作用,引进先进管理系统使企业经营变得规范、合理。企业库存及销售管理软件无论是在功能设计还是业务流程上都尽可能做到满足经营管理运作流程的需求,并且操作方便、功能强大,即使操作者对计算机知识一窍不通也能一用就会。它强化库存管理,规范业务流程,提高资金管理的透明度,加快商品资金周转,是企业经营管理中数据分析中必不可少的管理工具。1.2国内外发展概况计算
11、机在管理中的应用开始于1954年,当时美国首先用计算机处理工资单。40多年来,计算机在处理管理信息方面发展迅速。例如,60年代美国计算机在管理中应用项目不到300项,到了1975年达到2670项。而现在,美国在财务会计上90%的工作由计算机完成;物资管理中80%100%的信息处理由计算机完成;计划管理中是80%90%。据计算机应用方面发展较快的国家统计,计算机用于经济管理的约占80%;用于科技运算的占8%;用于生产过程控制的占12%。因此,经济管理是计算机应用的主要领域。当然,由于库存管理在经济管理中占重要地位,其计算机化在发达国家中也已经达到了相当高的水平。我国在全国范围内推广计算机在管理中
12、的应用,是在70年代末开始的,虽然起步较晚,近几年发展却较快,特别是微型计算机的出现和普及为信息处理提供了物美价廉的手段,对于推动我国管理信息处理的现代化起了重要的作用。目前存在的问题:库存管理对企业来说是一项繁琐复杂的工作,每天要处理大量的单据数据。为及时结清每笔业务,盘点库存和货物流动情况,保证企业生产用料以及货物安全,库管人员要花费大量人力物力和时间来作数据记录统计工作。在世界发达国家,库存管理的计算机化水平已经很高了,尽管我国的生产企业在这方面也有了很强的意识和长足的进步,但仍存在这样、那样的一些问题。表现之一:有的企业单位的库存管理部分目前仍为手工、半手工操作。从供应单位办理入库登记
13、开始,到使用单位输领料出库手续为止,所有操作基本上都是由仓库管理人员笔写,手理,加上算盘、计算器来完成。这不仅繁锁,效率低,而且缺乏库存管理的一些基本手段,如库存状况统计,查询经济订货量计算等,这给企业在一定程度上造成了管理上的落后,及经济利益上的损失。表现之二为:有的单位的库存管理部已上了微机,但对微机的利用效率极低,有的在用它打游戏,有的仅把它当计算器或打字机来用。表现之三为:有的企业单位既有了微机同时也有了库存管理软件,但硬件上去了,软件上不去。因为他们用的库存管理软件,大多为自己的工作人员及其他一些非专业人员所开发的简单的管理程序,很难称得上是“库存管理信息系统软件”这些程序的弱点多表
14、现为:1)系统开发时无科学的理论支持。2)开发过程中调研不全面。3)软件编写时模型不清晰完整。4)所用开发工具落后(如Foxbase等)。1.3本课题的研究内容本文对企业库存及销售管理软件开发,通过企业库存及销售管理软件减轻管理人员的工作压力,避免出错。管理信息化与管理改进紧密结合,可以促进企业的管理规范化,提高企业运作效率和竞争力,企业可以有时间关注企业的发展,加强行业内竞争实力,不断提升企业的竞争力,也可以有更多的时间考虑如何进一步提高工效,提升公司服务质量和降低成本,做到不断改善。从概念上讲,企业库存及销售管理软件软件是为了使公司项目能够按照预定的成本、进度、质量顺利完成,而对成本、人员
15、、质量、风险等进行分析和管理的活动。实际上,企业库存及销售管理软件的意义不仅仅如此,企业库存及销售管理软件有利于将企业的管理能力提高高,表明这个企业的管理越趋向于成熟,企业越能够稳定发展(即减小风险)。同时,随着公司规模的逐渐增大,企业库存及销售管理不再是向过去那样几个管理人员可解决的事情。迫切需要一种管理规范来规范每个管理人员、销售人员与支持人员的工作。同时采用规范化管理,专业分工也可以降低对开发人员的要求,从而降低企业的成本。1.4本文的组织结构本文的第一章如上述,通过引言引出本课题的意义,接下来介绍了毕业设计的背景及分析,课题的主要内容和论文的构成及研究内容。第二章详述了系统开发工具的基
16、础。包括网页开发工具Microsoft Visual C+ 6.0的特点,数据库软件SQL Server2000的功能,为接下来的开发工作做好了铺垫。第三章是系统总体设计,首先做出了系统的可行性分析和需求分析,并且介绍了系统的开发环境以及运行环境,接下来为系统的功能做出了详细的说明,还对系统的架构进行了详细的阐述。第四章作为系统的详细设计,首先介绍了系统数据库分析和系统数据库设计,而后对系统的主页与整体风格进行说明。第五章作为总结。第二章 软件开发的技术基础2.1程序开发工具Microsoft Visual C+ 6.0Visual C+是一个功能强大的可视化软件开发工具。自1993年Micr
17、osoft公司推出Visual C+1.0后,随着其新版本的不断问世,Visual C+已成为专业程序员进行软件开发的首选工具。虽然微软公司推出了Visual C+.NET(Visual C+7.0),但它的应用的很大的局限性,只适用于Windows 2000,Windows XP和Windows NT4.0。所以实际中,更多的是以Visual C+6.0为平台。Visual C+6.0不仅是一个C+编译器,而且是一个基于Windows操作系统的可视化集成开发环境(integrated development environment,IDE)。Visual C+6.0由许多组件组成,包括编辑器
18、、调试器以及程序向导AppWizard、类向导Class Wizard等开发工具。 这些组件通过一个名为Developer Studio的组件集成为和谐的开发环境。Visual C+它大概可以分成三个主要的部分:Developer Studio,这是一个集成开发环境,我们日常工作的99%都是在它上面完成的,再加上它的标题赫然写着“Microsoft Visual C+”,所以很多人理所当然的认为,那就是Visual C+了。其实不然,虽然Developer Studio提供了一个很好的编辑器和很多Wizard,但实际上它没有任何编译和链接程序的功能,真正完成这些工作的幕后英雄后面会介绍。我们也
19、知道,Developer Studio并不是专门用于VC的,它也同样用于VB,VJ,VID等Visual Studio家族的其他同胞兄弟。所以不要把Developer Studio当成Visual C+, 它充其量只是Visual C+的一个壳子而已。MFC,从理论上来讲,MFC也不是专用于Visual C+,Borland C+,C+Builder和Symantec C+同样可以处理MFC。同时,用Visual C+编写代码也并不意味着一定要用MFC,只要愿意,用Visual C+来编写SDK程序,或者使用STL,ATL,一样没有限制。不过,Visual C+本来就是为MFC打造的,Visu
20、al C+中的许多特征和语言扩展也是为MFC而设计的,所以用Visual C+而不用MFC就等于抛弃了Visual C+中很大的一部分功能。但是,Visual C+也不等于MFC。Platform SDK。这才是Visual C+和整个Visual Studio的精华和灵魂,虽然我们很少能直接接触到它。大致说来,Platform SDK是以Microsoft C/C+编译器为核心(不是Visual C+,看清楚了),配合MASM,辅以其他一些工具和文档资料。上面说到Developer Studio没有编译程序的功能,那么这项工作是由谁来完成的呢?是CL,是NMAKE,和其他许许多多命令行程序,
21、这些我们看不到的程序才是构成Visual Studio的基石。2.2数据库软件 SQL Server2000SQL Server 2000 是Microsoft 公司推出的SQL Server 数据库管理系统的一个版本。该版本继承了SQL Server 7.0 版本的优点同时又比它增加了许多更先进的功能,具有使用方便,可伸缩性好与相关软件集成程度高等优点,可跨越从运行Microsoft Windows 98 的膝上型电脑到运行Microsoft Windows 2000 的大型多处理器的服务器等多种平台使用。SQL Server 2000 的特性Microsoft SQL Serve 2000
22、 的特性包括:Internet 集成。SQL Server 2000 数据库引擎提供完整的XML 支持。它还具有构成最大的Web 站点的数据存储组件所需的可伸缩性、可用性和安全功能。SQL Server 2000 程序设计模型与 Windows DNA 构架集成,用以开发 Web 应用程序,并且SQL Server 2000 支持 English Query 和 Microsoft 搜索服务等功能,在Web 应用程序中包含了用户友好的查询和强大的搜索功能。可伸缩性和可用性。同一个数据库引擎可以在不同的平台上使用,从运行 Microsoft Windows® 98 的便携式电脑,到运行
23、Microsoft Windows 2000 数据中心版的大型多处理器服务器。SQL Server 2000 企业版支持联合服务器、索引视图和大型内存支持等功能,使其得以升级到最大 Web 站点所需的性能级别。企业级数据库功能。SQL Server 2000 关系数据库引擎支持当今苛刻的数据处理环境所需的功能。数据库引擎充分保护数据完整性,同时将管理上千个并发修改数据库的用户的开销减到最小。SQL Server 2000 分布式查询使您得以引用来自不同数据源的数据,就好象这些数据是 SQL Server 2000 数据库的一部分,同时分布式事务支持充分保护任何分布式数据更新的完整性。复制同样使
24、您得以维护多个数据复本,同时确保单独的数据复本保持同步。可将一组数据复制到多个移动的脱接用户,使这些用户自主地工作,然后将他们所做的修改合并回发布服务器。易于安装、部署和使用。 SQL Server 2000 中包括一系列管理和开发工具,这些工具可改进在多个站点上安装、部署、管理和使用 SQL Server 的过程。SQL Server 2000 还支持基于标准的、与 Windows DNA 集成的程序设计模型,使 SQL Server 数据库和数据仓库的使用成为生成强大的可伸缩系统的无缝部分。这些功能使您得以快速交付 SQL Server 应用程序,使客户只需最少的安装和管理开销即可实现这些
25、应用程序。数据仓库。 SQL Server 2000 中包括析取和分析汇总数据以进行联机分析处理 (OLAP) 的工具。SQL Server 中还包括一些工具,可用来直观地设计数据库并通过 English Query 来分析数据。2.3系统需求分析根据设计的需求,要求系统具有以下功能:实现商品入库、入库退货操作。实现商品销售、销售退货操作。实现库存管理(调货、盘点)操作。第三章 软件的总体设计 3.1软件整体规划根据需求分析,设计系统框架。进销存管理系统由等8部分组成。设计各部分具体功能如下:1.基础信息模块:基础信息模块包括药品信息、员工信息、供应商信息和客户信息4部分。2.销售模块:销售模
26、块由销售登记、销售退货、销售查询、销售退货查询4部分。3.入库模块:入库模块主要由入库登记、入库退货、入库查询、入库退货查询4组成。4.调货模块:调货模块包含调货登记和调货查询两部分。5.库存模块:库存模块由库存盘点、库存查询、仓库管理3部分组成。6.系统管理模块:系统管理模块由修改用户密码、修改用户权限、修改用户3部分组成。 3.2开发及运行环境1硬件要求CPU:300MHz以上的处理器。内存:推荐256MB。硬盘:150MB以上剩余空间。2软件要求操作系统:Windows2000/NT/XP/数据库:SQL Server2000。开发工具:Microsoft Visual C+ 6.0。
27、3.3系统功能结构进销存管理系统的功能结构如图3.1所示:图3.1功能结构图3.4设计目标本系统是根据中小企业的实际需求而开发的,完全能够实现商品入库、销售管理,通过本系统可以达到以下目标:系统运行稳定,安全可靠;界面设计美观,人机交互界面友好;信息查询灵活、方便、快捷、准确,数据存储安全可靠;信息安全保密。第四章 软件的详细设计4.1数据库设计4.1.1数据库概要说明本系统采用SQL Server 2000 数据库,系统数据库名为ypgl,总共包含46个表,其中作为临时表的有20个,作为数据存储表的有26个。临时表:lsdhinfo0、lsdhinfo1、lsgys0、lsgys1、lskc
28、query0、lskcquery1、lsrkquery1等。数据存储表:tabbf、tabck、tabdhdj、tabdhph、tabgys、tabjsfs、tabkc、tabkcpddj、tabkcpdph、tabkh、tabpurview、tabpurviewctrl、tabrkdj、tabrkjz、tabrkph、tabrkthdj、tabrkthjz、tabrkthph等。图2所示的即为本系统中数据库的数据表结构图,该数据表结构图包含系统所有数据表。可以清晰地反应数据库信息。图4.1 数据库概要说明4.1.2主要数据表的结构由于篇幅有限,只给出部分数据表。下面分别介绍以下各个表的结构。
29、tabdhdj表用于保存调货登记信息。tabdhdj表的结构如表4.1所示。表4.1 tabdhdj表的结构字段名称数据类型字段大小可否为空说明dh_ph文本20Not Null调货票号(主键)out_ck文本20Not Null调出的库(外健)in_ck文本20Not Null调入的库(外健)yp_id文本10Not Null药品编号(外健)sl长整型Null数量tabpurview表用于保存权限信息。tabpurview表的结构如表4.2所示。表4.2 tabpurview表的结构字段名称数据类型字段大小可否为空说明admi_name文本20Not Null用户名(主键)admi_pass
30、word文本255Null用户密码admi_purview长整型Not Null用户权限(外键)tabrkdj表用于保存入库登记的相关信息。tabrkdj表的结构如表4.3所示。表4.3 tabrkdj表的结构字段名称数据类型字段大小可否为空说明rk_ph文本20Not Null入库票号(外键)yp_id文本10Not Null药品编号(外键)ck_name文本30Not Null仓库名称(外键)sl双精度型Null数量dj双精度型Null单价je双精度型Null金额tabrkjz表用于保存入库结账的相关信息。tabrkjz表的结构如表4.4所示。表4.4 tabrkjz表的结构字段名称数据类
31、型字段大小可否为空说明fk_ph文本20Not Null收款票号(主键)rk_ph文本20Not Null销售票号(外键)je双精度型Null收款金额fs文本10Null收款方式(外键)rq日期/时间Not Null结款日期czy文本20Not Null操作员(外键)jsr文本20Not Null经手人bz文本100Null备注tabrkph表用于保存入库票号。tabrkph表的结构如表4.5所示。表4.5 tabrkph表的结构字段名称数据类型字段大小可否为空说明rk_ph文本20Not Null入库票号(主键)gys_id文本10Not Null供应商编号(外键)pzs双精度型Null品种
32、数yf双精度型Null应付sf双精度型Null实付wf双精度型Null未付rq日期/时间Not Null日期jsfs文本10Not Null结算方式(外键)is_jq布尔型Not Null是否结清czy文本20Not Null操作员(外键)jsr文本20Not Null经手人4.2主窗口设计进销存管理系统主窗口由菜单、客户区域和状态栏三部分组成,效果如图4.2所示。图4.2 进销存管理系统主窗口4.2.1菜单设计从菜单中选择“View”/“Workspace”项,这时会弹出如图4.3所示的工作区窗口(Workspace窗口)。在工作区窗口中,能看到该程序所使用的资源,且每种资源都有一个资源符号
33、,主窗体也使用了一个资源符号IDD_A1_DIALOG,这是VC缺省提供的。可以在这里添加或者删除各种资源。图4.3 Workspace窗口在工作区窗口(Workspace窗口)右键单击“a1 resources”选项,在弹出菜单中选择“Insert.”选项,将弹出“Insert Resource”对话框。在该对话框中选择“Menu”选项,然后单击“New”按钮,将生成如图4.4所示的菜单资源。图4.4 编辑菜单资源右键双击菜单资源编辑器的虚线空白框,在弹出的菜单中选择“Properties”选项,将弹出“Menu Item Properties”对话框,在“Menu Item Propert
34、ies”对话框的“caption”(标题)编辑框中键入:“基础信息(&I)”(符号&可以使字母I有一个下划线,而且可以通过“Alt+I”访问该菜单项。此时关闭“Menu Item Properties”对话框,将在菜单编辑器中生成主菜单“基础信息”。双击“基础信息”菜单下的虚线空白框,在弹出的“Menu Item Properties”对话框中设计“药品信息(&M)”、“员工信息(&Y)”等菜单项。同上,可以设计其他主菜单及菜单项。最后得到如图4.5所示的菜单界面。图4.5 菜单界面4.2.2状态栏设计为使应用程序操作界面更加友好,可以使用状态条显示程序当前程序的状态信息或提示信息。在VC中提
35、供了CStatusBarCtrl类显示状态栏。在本程序中利用状态条显示操作者、日期、时间等信息。其实还有CStatusBar类可以显示状态栏,但是这个类只能用于主框架(CFrameWnd)上。分析功能:显示操作员名字、公司名称及时间。其中,公司名称是常量字符串,可以将其加为字符串资源;操作员名字,是登录的用户名,将其放在应用程序类中,这样,就可以在程序的任何地方都可以访问了;时间,需要设置OnTimer时间来处理当时间改变时,刷新显示。解决创建状态栏的相关问题访问应用程序对象。CA1App* app=( CA1App *):AfxGetApp();/app是应用程序对象指针,可以访问应用程序对
36、象的成员变量,例如:MessageBox(app-m_sUserName);访问资源字符串。先在“Workspace”中的“Resource View”选项中建立字符串资源,定义符号IDS_COMPANY,对应资源为“北京工商大学”。在程序中使用如下代码:CString str;str.LoadString(IDS_COMPANY);str保存相应的字符串资源。将访问时间转化为字符串。CTime t=CTime:GetCurrentTime();CString s=t.Format(%H:%M:%S);s=当前系统时间:+s; s会显示为“当前系统时间:20:09:25”形式的字符串。OnTi
37、mer消息响应函数。为实现每隔1秒刷新一次状态栏的显示内容,可以使用WM_TIMER的消息响应函数OnTimer。要创建主窗体的OnTimer函数,首先在“Workspace”工作区“Class View”选项卡中右键单击“CA1Dlg”选项,在弹出菜单中选择“Add Windows Message Handle.”菜单项,将弹出“New Windows Message and event handles for class CAIDlg”对话框。在该对话框中,可以选择要进行处理的消息句柄,并为其添加消息响应函数。步骤是从左边的列表框中双击“WM_TIMER”,将其添加到右上边的列表框中,双击
38、该列表框中的“WM_TIMER”项,可以看到VC+创建的函数OnTimer,可以设置这个函数每隔一定的时间响应一次。函数SetTimer来设置OnTimer的消息响应频率。UINT SetTimer( UINT nIDEvent, UINT nElapse, void (CALLBACK EXPORT* lpfnTimer)(HWND, UINT, UINT, DWORD) );参数说明:nIDEvent:用来标识是哪一个Timer事件。nElapse:设置该Timer事件每隔多长时间发生一次,单位:毫秒。lpfnTimer:设置回调函数,用来响应事件的发生,相当于OnTimer函数。如果将其
39、设为NULL,那么,WM_TIMER事件由窗口类来处理,即由OnTimer函数处理。在本程序中,设定OnTimer函数1000毫秒响应一次。SetTimer(12,1000,NULL);状态栏类CStatusBarCtrl的使用。CRect rect;this-GetClientRect(&rect);int indicators3;indicators0=rect.Width()/2;indicators1=rect.Width()*3/4;indicators2=rect.Width();m_StatusBarCtrl.SetParts(3,indicators);以上代码用来初始化状态栏
40、,函数SetParts用来设定该状态栏由几个面板组成,每个面板的宽度。实际上,该函数用整型数组作参数,数组元素的值代表面板的宽度。函数SetText用来设定每个面板上显示的数据,代码如下:lBOOL SetText( LPCTSTR lpszText, int nPane, int nType );参数说明:lpszText:是该面板的字符串。nPane:是面板编号(基于0)。nType:是面板风格,该参数一般为0。创建状态栏。创建状态栏的操作步骤如下:在CA1Dlg的声明中定义CStatusBarCtrl的对象:CStatusBarCtrl*m_StatusBarCtrl。在CA1Dlg的初
41、始化函数中初始化状态栏对象,代码如下:BOOL CA1Dlg:OnInitDialog()CDialog:OnInitDialog();SetIcon(m_hIcon, TRUE);/Set big iconSetIcon(m_hIcon, FALSE);/Set small icon/取得系统时间CTime t=CTime:GetCurrentTime();CString s=t.Format(%H:%M:%S);s=当前系统时间:+s;/为状态栏创建窗体CRect rect;this-GetClientRect(&rect);m_StatusBarCtrl.Create(WS_CHILD|
42、WS_VISIBLE|CCS_BOTTOM,rect,this,ID_STATUS_BAR_CTRL);/设置状态栏的显示区间数,及相应宽度int indicators3;indicators0=rect.Width()/2;indicators1=rect.Width()*3/4;indicators2=rect.Width();m_StatusBarCtrl.SetParts(3,indicators);/显示各区间文本str.LoadString(IDS_COMPANY);m_StatusBarCtrl.SetText(str,0,0);CA1App * app=( CA1App *):
43、AfxGetApp();m_StatusBarCtrl.SetText(当前操作员:+app-m_sUserName,1,0);m_StatusBarCtrl.SetText(s,2,0);/令CA1Dlg每一秒钟触发一次OnTimer事件,修改系统时间this-SetTimer(12,1000,NULL);return TRUE; /return TRUE unless you set the focus to a control处理WM_TIMER消息的消息响应函数OnTimer,代码如下:void CA1Dlg:OnTimer(UINT nIDEvent) CTime t=CTime:G
44、etCurrentTime();CString s=t.Format(%H:%M:%S);s=当前系统时间:+s;this-m_StatusBarCtrl.SetText(s,2,0);CDialog:OnTimer(nIDEvent);4.2.3客户区设计一个优秀的商业管理系统,不但要有实用的功能,还要有漂亮友好的界面。在本例中,设置窗体背景只需加入一个Bitmap资源,其操作步骤如下:在资源对话框上放一个Picture控件。然后加入一个需要的Bitmap资源,如果图片包含的颜色超过256种,那么它会提示该图片不能在资源编辑器里编辑,不用管它,除非真的想编辑它,加进来的图片的资源符号缺省为I
45、DB_BITMAP1。设置Picture控件属性类型为Bitmap,图像为IDB_BITMAP1。4.3系统登录管理4.3.1实现目标程序启动后,首先进入系统登录程序验证用户密码。系统登录程序主要实现如下功能。输入密码的控件采用文本框。密码如果输入正确,取得用户权限并进入系统,否则,将提示错误,并返回密码输入框。记录错误次数,录入密码错误3次将自动退出系统。用户按下Enter键,控制焦点的移动。系统登录程序运行结果如图4.6所示。图4.6 系统登录窗口4.3.2设计步骤增加对话框资源,设计窗体资源符号为IDD_DIALOG_LOGIN。为该窗口连接相关的类,在资源对话框上右键单击,选择“ClassWizard.”选项,会弹出“Add a class”对话框,提示IDD_DIALOG_LOGIN是一个新的资源,需要为这个资源创建一个类,或为它连接一个现有类。在此,选择新建一个派生于CDialog的类来连接该资源,该类命名为CDlgLogin。向窗口中添加图片、编辑框、静态文本、按钮等资源,设置主要资源属性,如表4.6所示。表4.6 相关资源设置资源名称资源符号资源对应的变量资