VC管理系统项目设计与实现
- 格式:doc
- 大小:1.90 MB
- 文档页数:24
河南农业大学华豫学院本科毕业论文(设计) 摘要在现代化企业中,企业员工的考勤工作不仅工作量大,而且时效性强。
随着数据库技术的发展和企业信息化建设的进行,使用计算机管理企业考勤工作也成为大势所趋,它为企业的考勤工作节约了大量的人力和物力,也大大减轻了考勤工作人员的工作量。
考勤管理系统是企业对考勤实行了信息化管理,其目的是为了实现员工考勤数据采集、信息查询和数据统计过程的自动化,完善人事管理现代化,方便管理人员统计、考核员工出勤情况,计算员工工资。
关键词关键词关键词关键词:考勤管理,Access2007,数据库,VC++Abstract In the corporations today, employees' job of check on work attendance not only workload isvery large, but also time is very strong. Along with development of database technology andprogress of corporation information's building, using computer to manage check on workattendance of corporations which it is necessary. It saves a mass of manpower and materialresources and greatly lightens workload of employees.Attendance Management System is a business-to-appraisal of the implementation ofinformation management, which aims is designed to achieve staff attendance data collection,information query and statistical process automation, improve personnel managementmodernization, and the convenience of staff to report to work, facilitate management statistics,the examination staff attendance.Key words: attendance, Access2007, database,VC++河南农业大学华豫学院本科毕业论文(设计) 目录0 绪论 ............................................................................. .. (1)1 系统目标及使用软件介绍 ............................................................................. .. (1)1.1 系统目标 ............................................................................. .. (1)1.2 使用软件的介绍 ............................................................................. .. (1)2 可行性研究及设计思想 ............................................................................. (2)2.1 可行性研究 ............................................................................. . (2)2.2 开发设计思想 ............................................................................. (3)3 需求分析 ............................................................................. (3)3.1 用户需求分析 ............................................................................. (3)3.2 数据分析--概念模型设计 ............................................................................. (3)3.2.1 数据描述 ............................................................................. . (3)3.2.2 数据库建模 ............................................................................. (4)3.2.3 关系描述的设计 ............................................................................. . (5)4 系统设计 ............................................................................. (6)4.1 Access2007数据库的建立 ............................................................................. .. (6)4.2 数据库连接 ............................................................................. . (7)4.3 数据库操作 ............................................................................. . (8)4.4 各个模块的设计与实现 ............................................................................. .. (9)5 主要技术 ............................................................................. . (15)5.1 主要控件代码 ............................................................................. . (15)5.2 ADO数据库访问技术 ............................................................................. .. (16)6 结束语 ............................................................................. .. (17)致谢 ............................................................................. . (18)参考文献 ............................................................................. . (18)河南农业大学华豫学院本科毕业论文(设计)1 0绪论当今社会,资金是企业生存的主要元素,资金的流动影响到企业的整体运作,企业员工的工资是企业资金管理的一个重要的组成部分。
学籍管理系统一、系统简介设计一个基于结构体数组的学生学籍管理系统,能实现对学生学籍信息进行录入,修改,删除,查询和输出等基本操作二、需求分析学籍管理系统应该实现以下功能:1、能录入学生的基本信息,包括学号,姓名,专业,年级,性别和出生日期信息,保存到结构体数组中。
2、能根据输入的学号查询学生,进行信息的修改。
3、能根据输入的学号从结构体数组中删除学生的记录。
4、实现查询功能,能根据输入的学号或年级在屏幕上显示相应的学生信息。
5、能在屏幕上以列表的方式输出所有学生的信息。
三、概要设计1、系统功能根据项目的开发要求,本系统划分成六个主要功能模块:录入学生信息模块、修改学生信息模块、删除学生信息模块、查询学生信息模块、输出模块和推出模块。
系统功能机构图如下:2、重要数据的数据结构设计学生学籍的记录项用结构体Stu message表示,包括6个属性,stuno,name、spec、grade、sex、birthday 分另U代表学生的学号、专业、年级、性另U和出生日期,其中birthday 类型为自定义的结构体类型Date.Struct stumessage {Char stuno[11]: // 学号Char name[9]: // 姓名Char spec[2]: // 专业Char grade: // 年级Char sex : // 性别Stuct date birthday: // 出生日期};日期类型date包括三个属性,分别代表年、月、日Struct date{int year : // 年Int month: //Int day: // H};3、函数设计学籍管理系统程序采用了结构化程序设计的思想,由1个.h 头文件和3个C源文件组成。
程序中除了主函数外,共设计了以下14个函数,分别包含在3个.c源文件中。
以下是这些函数原型及功能设计。
(1) void sysinfo(void)函数功能:在屏幕上输入系统及信息并等待用户响应。
1.项目介绍本系统由学生端和教师端共同组成,学生端为系统中的客户端,教师端为服务器端。
学生端的作用主要是对学生机上正在运行的进程进行适时监控,再将监控到的信息发往教师端。
教师端的作用是将收集到的信息进行比较处理,并将结果返回学生端。
1.1系统功能介绍登陆功能:输入教师端的IP 地址,端口号,学生姓名和学号,学生登陆,系统开始运行,并与教师端数据库连接;进程监控:对登陆后学生机运行的各进程进行监控,每10秒中枚举一次;校验进程:当获取进程后,对各进程对应的文件进行校验码计算,以核对需要的进程文件名是否被改动过;判定非法进程:这个功能的实现也需要用到校验功能,把校验码计算出来后发往教师端,经教师端比较,如发现有此类进程,则在学生端弹出警告对话框,提示学生不能运行该程序。
1.2系统流程图2.功能实现2.1实现思路2.1.1登陆功能登陆功能中,学生需要依次填入教师机的IP 地址和端口号,以及自己的姓名和密码,如果填写不完整,则提示,如果填写无误,程序将创建一个Socket 连接申请与教师端相连,若连接成功,便将学生的姓名和学号在教师端数据库中核对,确认后,创建一个定时器,每隔十秒枚举一次系统进程,登陆成功的同时登陆窗口也将作为托盘隐藏起来。
所以登陆功能是整个系统正常运行的第一步,没有它,其他功能都不能被触发。
2.1.2进程监控功能该功能为系统主要功能之一,是本系统的核心。
在登陆功能实现之后,系统便自动运行进程监控功能。
因为,程序是死的(静态的),进程是活的(动态的)。
要知道一个程序运行了多长时间,只需要记录该进程活动的时间即可。
该功能可为教师端提供主要的信息,以便教师端记录学生上机的正确时间。
要对当前系统所有已开启的进程进行枚举,就必须首先获得那些加载到内存的进程当前相关状态信息。
在Windows 操作系统下,这些进程的当前状态信息不能直接从进程本身获取,系统已为所有保存在系统内存中的进程、线程以及模块等的当前状态的信息制作了一个只读副本--系统快照,用户可以通过对系统快照的访问完成对进程当前状态的检测。
Visual C++程序设计实验指导书实验1 认识Visual C++6.05中文版开发环境实验内容(1)熟悉VisualC++6。
05的开发环境。
(2)操作工具栏和项目工作区窗口。
(3)用应用程序向导创建一个控制台应用项目Ex_Hello。
(4)输入并执行一个新的C++程序Ex_Simple.实验准备和说明(1)建议在本教材第一次上课时进行本次实验。
(2)熟悉Windows 2000或XP操作系统的环境和基本操作。
(3)熟悉实验报告的书写格式,这里给出一下建议:实验报告采用A4纸,封面一般包括实验目次.实验题目,班级,姓名,日前和机构名称.报告内容一般包括实验目的和要求。
实验步骤,实验思考和总结。
需要指出的是,实验步骤不是书本内容的重复,而是自己结合实验内容进行探索的过程,教师也可根据具体情况提出新的实验报告格式和新的要求.(4)阅读以下关于VisualC++的说明:Visual C++是Microsoft公司推出的目前使用极为广泛的基于WINDOUWS平台的可视化编程环境。
是在以往的版本不断更新的基础上形成的,其功能强大,灵活性好,完全可以扩展以及具有强有力的Internet支持,在各种c++语言开发工具中脱颖而出,成为目前最为流行的C++语言集成开发环境。
Visual C++6。
0分为标准版,企业版和专业版3种,但其基本功能是相同。
Visual C++6。
5中文版是在Visual C++6。
0基础上进行汉化的以一个版本,本书以此版本作为编程环境。
为统一起见,我们仍称之为Visual C++6.0。
实验步骤1。
打开计算机,启动windouws2000操作系统2。
建工作文件夹3。
启动Visual C++6.04。
创建一个控制台应用项目5。
认识开发环境界面6。
认识工具栏7。
工具栏的显示和隐藏8.工具栏的浮动与停泊9。
项目工作区窗口10。
修改代码,编译运行11。
输入一个新的C++程序12。
修正语法错误13.退出Visual C++6。
目录一、需求分析 (4)1.项目目标概述 (4)2.问题初始分析 (4)2.1 场景描述 (4)2.2 初始功能提取 (4)3.系统功能分析建模论述 (5)3.1系统流程图 (5)3.2 功能模型(数据流图) (6)3.3 数据模型(实体-关系图) (6)3.4 行为模型(状态转换图) (7)3.5 层次方框图(描绘产品的数据结构) (7)4.系统性能需求 (8)4.1 时间要求 (8)4.2 空间要求 (8)5.系统界面与接口需求 (8)5.1 界面需求 (8)5.2 接口需求 (9)6.可行性分析 (9)二、系统设计 (9)1.引言 (9)1.1 目的 (9)1.2 命名规则 (10)2.系统设计 (10)2.1 方案设计 (10)2.2 软件结构设计 (10)2.3 数据库设计 (11)2.4 详细设计 (11)三、系统实现 (15)1、编程环境概述 (15)2、程序源代码 (15)2.1 三餐安排功能模块源代码 (15)2.1 登录功能模块源代码 (22)四、系统测试 (25)1. 概述 (25)2. 测试 (25)2.1 单元测试 (25)2.2 测试报告 (25)3.系统主要运行界面 (28)4. 系统测试结论 (29)五、实验总结 (30)参考文献: (30)一、需求分析1.项目目标概述该系统旨在为长期工作在电脑前的用户提供日常的作息安排,进而改善用户的作息,从而将生物钟调整至最佳状态,更好地迎接每一天的工作。
2.问题初始分析2.1 场景描述目前越来越多的白领型工作人员由于缺乏健康管理意识,身体素质大幅度下降,以致于出现各种健康问题。
合理的安排每天的日常行为,可以很有效地改善身体的各种调节,从而能够正常地作息,用最好的状态去完成每天的工作。
因此,开发一种能够帮助长期工作在电脑前的朋友进行自我健康管理的软件是很有必要的。
2.2 初始功能提取本系统意图实现以下功能:一、初步判断用户的基本身体状况,即根据身高、体重、年龄、性别来判断。
河北农业大学现代科技学院毕业论文(设计)题目:基于VC++的五子棋程序设计与实现摘要C++语言是一种面向对象的语言,尽管在当前,可视化语言发展迅速,普及很快,但C++语言作为一种基础的语言,它的有时依然存在,甚至有时它是不可替代的,特别是和硬件接口技术相联系的软件。
五子棋游戏是一种简单大众的游戏,自计算机实现以来,深受广大电脑玩家的喜爱,现在流行的五子棋游戏软件大多缺乏美观的界面,和容易的操作方法,电脑的AI值也不是很高。
本文通过C++语言在计算机图形方面的编程,设计了五子棋游戏软件,使该软件具有还算美观和操作简单的界面,在人机对战时,分为低级,中级和专家级,加大对游戏的乐趣,当然也可以实行人人对战。
本游戏是以C++语言作为开发工具,采用搜索算法设计最优落子点开发的游戏软件。
本文就是介绍五子棋软件设计的全过程。
关键字C++语言面向对象最优落子AbstractC + + language is an object-oriented language, although in the current, visual language developed rapidly, spread quickly, but the C + + language as a basic language, it is sometimes still exists, and sometimes it is irreplaceable, especially with hardware interface technology associated software. V olkswagen backgammon game is a simple game, since the computer to realize, the majority of PC gamers love, now popular backgammon game software lacks most beautiful interface, and easy method of operation, AI value of the computer is not very high. In this paper, C + + programming language in computer graphics, design a backgammon game software, so that the software has the appearance and operation is fairly simple interface, the man-machine war, divided into low, intermediate and expert level, increase the game fun, of course, can also be implemented for all war. This game is based on C + + language as a development tool, the search algorithm design optimal point developed game software. This article is to introduce the whole process of backgammon software design. Keyword C++ language Object-oriented the optimal initial目录1绪论 (5)1.1五子棋的简介 (5)1.2 Visual C++的介绍 (6)1.3 开发环境及运行环境 (6)1.3.1 开发环境 (6)1.3.2 运行环境 (6)2 系统分析 (7)2.1系统调研 (7)2.2可行性分析 (7)2.3 技术可行性分析 (7)3软件架构 (9)3.1 棋盘类 (9)3.1.1主要成员变量 (9)3.2 主要成员函数说明 (9)3.2.1 清空棋盘 (9)3.2.2 绘制棋子 (9)3.2.3 左键消息 (10)3.2.4 绘制棋盘 (10)3.2.5 对方落子完毕 (10)3.2.6 胜负的判断 (10)3.3 游戏模式类 (10)3.3.1主要成员变量 (10)3.3.2主要成员函数 (11)3.4 资源编辑 (11)3.5消息说明 (13)3.5.1落子消息 (14)3.5.2声音消息 (14)3.5.3提示消息 (14)3.5.4悔棋消息 (14)3.5.5输赢消息 (14)3.5.6再次开局消息 (14)4主要算法 (15)4.1判断胜负 (15)4.2人机对弈算法 (16)4.2.1获胜组合 (16)4.2.2落子后处理 (16)4.2.3查找棋盘空位 (16)4.2.4落子打分 (17)4.2.5防守策略 (17)4.2.6选取最佳落子 (17)5 软件实现 (18)5.1游戏运行 (18)6补充说明 (21)7结论 (22)致谢 (23)1绪论1.1五子棋的简介五子棋是起源于中国古代的传统黑白棋种之一。
VC++制作一个人事管理系统——教职工管理系统关键词:VC++应用程序向导增加对话框资源 ADODC控件 DataGrid控件对话框切换2.1 系统设计的目的和意义人事管理系统是公司或学校或其他的事业单位用来统一管理人员的软件,下面我就一学校的教职工管理系统为例。
学校职工查询是学校管理中需要经常处理的一项工作,我的毕业设计结合一个简化的学校教职工管理系统的制作,介绍如何利用VC++的应用程序向导制作应用程序。
该系统的制作涉及一个数据库、两个数据表及其相关的对话框的制作开发,涉及在工程中增加对话框、调用对话框的方法以及应用程序向导的使用方法。
最重要的是,在我的毕业设计中,我将介绍一种新的数据源引用方法,即使用ADODC控件引用数据源并制作应用系统的方法。
我的毕业设计程序是简单的,但方法是重要的。
2.2系统功能设计本系统具有—般系统的数据处理功能,如数据录入、增加、修改、删除等。
2.3 数据库与数据表的设计本系统将首先创建一个职工信息数据库,并在它之中创建两个数据表,一个是“职工信息数据表”,—个是“职工工资信息表”。
在我的毕业设计当中,我仅用Microsoft Access 2003创建教职工管理数据库及其数据表。
2.3.1 利用Microsoft Access 2003创建教职工管理数据库及其数据表微软公司的许多产品所支持的数据库结构与数据库驱动器类型均是通用的,因此,用户往往可以借助于相关的工具创建数据库与数据表,这里我介绍采用Microsoft Access 2003创建数据库及其数据表的方法。
先定义职工信息数据表的结构,如表2.1所示,它专门用于记录教职工的基本情况。
表2.1 职工信息数据表的结构职工工资情况表的结构定义如表2.2所示,注意,这是一个简化了的职工工资数据表,因为工资表往往比较复杂,而且不同的单位工资表结构也有所不同.我不可能定义一个“万能”的工资表结构,只能创建一个具有示意义的工资数据表结构。
字段名称字段类型字段大小索引必须填写职工编号数字长整型惟一、主索引是职工文本20 是基本工资数字单精度型是其他工资数字单精度型是月收入数字单精度型是2.3.2 数据库与数据表的创建过程利用Microsoft Access创建数据序及具数据表的步骤如下:(1)启动Microsoft Office 2003中的Microsoft Access应用程序,出现如图2.1所示对话框。
图2.1 新建数据库(2)选择创建一个空数据库。
(3)单击“确定”按钮之后出现保存对话框,确定保存数据库的文件位置和数据库名称即可,本例中数据库名称为“职工管理数据库”;随后出现图2.2所示界面。
图2.2 数据库中的数据表操作界面在数据表操作界面小,用户可以打开已经存在的数据表,也可以创建新的数据表。
(4)单击“设计”菜单项即可以设汁一个斯的数据表结构;设计一个新的数据表结构就是通过数据表的设计器设计一个表的字段名称、宇段类型、字段大小、小数位数以及索引字段等等。
图2.3所示是职工信息数据表结构的设计器,采用同样的方法,可以创建职工工资数据表。
两个数据表结构一经创建,用户可以打开该数据表,在数据表中输入一些基本数据,以便在后面的系统设计中体现设计的效果。
创建的数据库保存在“D:超的毕业设计\ 职工管理数据库”中。
2.4 创建职工管理系统应用程序框架在VC++中创建应用程序往往可以通过向导首先创建一个应用程序的框架,应用程序框架为期户提供了一个基本的开发过程。
在这里,首先介绍制作“职工管理系统”程序的基本框架的过程和方法,其过程如下:(1)启动VC++程序,出现VC++开发平台。
(2)在VC++主菜单中单击“文件新建”菜单项,出现工程类型选择列表。
(3)在“工程”类型选择列表中选择工程类型为“MFC AppWizard (exe)”。
(4)在“工程”编辑框中键入“教职工管理系统”。
(5)在“位置”列表拒中选样存放的位置,此处设置为“D:\VC++我的毕业设计”。
(6)选择“R创建新工作区”并选择适合于Windows操作系统的Win32平台,如图2.4所示。
图2.4 工程创建的基本配置(7)单击“确定”按钮,出现图2.5所示对话框,该对话框用于进行应用程序类型设置。
图2.5 应用程序类型设置(8)选择“基本对话框”,并设置在资源中使用的语言为“中文[中国]”。
(9)单击“下一步”按钮,出现另一个设置对话框,即工程特色设置对话框,如图2.6所示。
图2.6 工程特色设置在工程特色设置对话框中作三项容选择,即:A关于框符、3D控制、ActiveX控件,并输入标题对话为“教职工管理系统”主界面。
(10)单击“完成”按钮,出现应用程序设置的全部信息:Application type of 教职工管理系统: //工程类型Dialog-Based Application targeting: //基本对话框Win32 //适合于Windows平台Classes to be created: //创建类 Application: CMyApp in 教职工管理系统.h and 教职工管理系统.cppDialog: CMyDlg in教职工管理系统Dlg.h and 教职工管理系统.cpp Features: //特色信息+ About box on system menu //创建了About对话框+ 3D Controls //支持3D控件+ Uses shared DLL implementation (MFC42. DLL) //使用动态库+ ActiveX Controls support enabled //支持ActiveX控件+ Localizable text in: //工程定位中文[中国] //资源使用语言(11)单击“确定”按钮完成应用程序框架的创建,出现应用系统框架,如图2.7所示。
图2.7 应用程序框架显示在应用系统程序框架中列出了全部的资源文件,用户可以进行资源显示,并可以显示由向导自动创建的各种类文档,这与第一个我的毕业设计所创建的应用程序框架的容大体一致。
2.5 基本框架的修改应用程序生成向导往往只能生成一个应用程序的架构,它不能执行任何的事务和系统的功能,需要用户权据自己的需求送行具体的制作,因此我首先对应用程序的基本框架进行修改。
2.5.1 主界面的修改在采用申文档应用程序类型创建应用系统时,往往向导创建的应用程序框架中的第一个对话柜就是该应用系统的主控界面。
主界面可以说是一个应用程序的核心,通过主界面可以调用其他界面。
用户可以在主界面中创建主菜单、快捷键面板或快捷菜中等,也可以增加命令按钮,用以对其他界面进行调用。
如果是一个简单的应用系统.也可以直接将主界面作为数据管理的界面,直接在主界面中进行控件布局、创建数据源并进行数据访问控件与数据源之间的“数据绑定”。
在我的毕业设计中,先对主界面,即对话框作如下修改:(1)删除主界面中的“确定”按钮。
(2)删除主界面中的“取消”按钮。
(3)删除主界面中的“TODO:在这里设置对话控制。
”静态文本框控件。
(4)在界面中放入一个命令控钳控件BUTTON1。
(5)用鼠标右键单击命令按钮控件BUTTON1,出现—个快捷菜单。
(6)在快捷菜单个选择“属性”菜单项,出现该按钮的属性设肯对话框。
(7)将命令按钮BUTTON1的资源索引号ID修改为“IDC_EXIT_BUTTON”。
(8)将命令按钮BUTTON1的标题属性设置为“退出系统”。
(9)设置它的StyIe属性为“坦平”。
其属性设置对话框如图2.8所示。
图2.8 按钮属性设置(10)关闭属性设置对话框,回到程序的主界面。
(11)编译运行工程,并单击该按钮,你会发现,它不会执行任何操作,因为我并末对其编制任何的过程代码。
2.5.2 为“退出系统”按钮创建类并增加成员变量在VC+应用程序中,资源是按类和成员变量进行识别的,因此我需要为资源中的每一个对象创建或声明一个类和相应的成员变量。
于此处该按钮是对话柜中的一个控件,也就是它的一个成员,因此它是对话柜类中的一个控件对象,不用再为它创建一个新类(从图2.9可以看出,它是对话框CMyDIg类中的一个控件,其控件索引号为;IDC_EXIT_BUTION),我只为它创建一个成员变量即可,其过程如下:(1)用鼠标右键单击“退出系统”按钮,出现一个快捷菜单。
(2)在快捷菜单中单击“建方类向导”菜单项,出现用于创建类的对话柜,如图2.9所示。
图2.9 创建类在该对话框中,可以对新的对象创建一个新的类并定义一个成员变量,但此处,我仅将“退出系统”按钮作为对活框的一个成员,因此,只需要为它定义一个成员变量即可。
(3)申击Add VariabIe…按钮,出现成员变量创建对话柜,如图2.10所示。
图2.10 成员变量定义在为—个对象引入成员变量时,首先应该为它定义一个成员变量名称,然而设置成员变只所属的类(Category),分为两种:一是控件(Control)类,第二类为值类,即Value类,在列表中系统将会根据对象的类型而自动列出一个供参考选择的列表容,此处选样Control。
另外,还而要设置变量的类型 (VariabIetype),系统也会根据对象的类型在列表框中列出相应的值,此处选择CButton。
(4)单击OK按钮即完成命令按钮的成负变量设置,随后它会显示在对话框类的成员变量信息列表中,如图2.11所示。
图2.11 对话框类中的成员变量信息在一个类中有多少个成员,它便显示多少个成员变量的信息.此处,目前只有一个成员在对话框中,因此只有一条信息。
值得注意的是,成员变量可以删除,也可以修改并重新进行定义,使成员变量必须是无二义性的,即在一个应用系统中,一个成员的变量是惟一的,不能出现两个成员定义同一成员变量的现象,否则会出现错误信息。
2.5.3 为“退出系统”按钮编制事件的过程代码“退出系统”技钮的作用就是结束应用程序的执行,关闭应用程序主窗体(对话框),因此我需要给它制作相应的过程代码,其操作步骤如下:(1)将图2.11的选项卡面图切换到消息映肘(Message Maps)近项卡,选择对象索引号ID为IDC_EXIT_BUTTON的项。
(2)在选项卡中选择单击事件BN_CLICKED信息(注意,作为一个命令按钮,执行事务的方式有单击和双击两种方式,此处选择单击方式,即BN_CLICKED)。
(3)单击Add Functlon…按钮增加该对象的成员函数,出现成员函数名定义,如图2.12所示。
图2.12 成员函数名定义(4)直接接受系统建议的成员函数名即可。
(5)单击OK按钮,完成成员函数的增加。
(6)单击Edit Code…按钮,进入命令按钮的事件过程代码编辑需要的过程代码即可,“退出系统”命令拉钮的过程代码如下所示:void CMyDlg : : OnExitButton (){/ / 开始编制过程TODO: Add your control notification handler code hereOnOK();/ / 结束代码编制}该代码的编辑实际上是在对话框的过程代码文件中的一个“代码体”中进行编辑,在VC++中,一个事务的过程编制往往以一个“代码体”来进行,它以void为过程标识与声明,该标识说明了对象所在的类和对象的函数名称CMyDlg::OnExitButton()。