毕业设计管理系统_第1页
毕业设计管理系统_第2页
毕业设计管理系统_第3页
已阅读5页,还剩20页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、目录一、系统开发的背景1二、系统分析与设计1(一)系统功能要求 1(二)系统模块结构设计1三、 系统的设计与实现2(一)学生基本信息浏览:BASIC_B()错误!未定义书签。(二) 错误!未定义书签。四、系统测试4(一)测试MAIN_FORM()函数错误!未定义书签。(二)错误!未定义书签。毕业设计管理一、系统开发的背景随着计算机及计算机网络的普及和全国各院校的校园网络的日益完 善、健全,各种工作的计算机网络化将逐步取代繁重的传统办公模式。毕 业设计作为大学生四年学习的重要环节,也有必要实行计算机网络化管理, 从而减轻设计指导老师的承重负担,简化立题、选题、评分等过程,让繁 冗的课题设计信息采

2、用计算机数据库统筹管理。因此,设计一种毕业设计 综合管理系统是我校教学管理发展的一项任务,也是各院校教学发展的趋 势。该系统为学生、教师、管理员提供一个交互的接口,大大方便了学生、 老师及管理员的管理人员。毕业设计是学生在校期间的最后一个教学环节,是学习深化和提高的 一个重要过程,也是综合检验所学理论知识的一个重要环节。本设计从课 题的申报、课题的审核、学生选题、调剂、指导、评阅、答辩、归档等环 节进行管理,实现了毕业设计的整个流程的管理工作。系统实现了学生自 主选题和教师自主选择学生的网上双向选择,并增加了留言板、文件上传 与下载、新闻发布等功能,能够保证毕业设计期间管理员、老师、学生之 间

3、信息的联通,对保证毕业设计的质量有非常重要的现实意义。随着网络 化的普及,全国高校的校园网络日益健全,实现无纸化办公成为未来的趋 势,并且随着天津城市建设学院的教学体制改革不断加深,本系统的建立 为参加毕业设计的教师、学生提供接口。二、系统分析与设计(一) 系统功能要求根据功能分为教师、学生的前台操作和管理员的综合管理。系统有三个主要的角色组成:学生、教师、管理人员。1. 教师完成的操作:个人信息的管理;课题的申报、修改、选择学生,设计期间与学生的 交流与辅导、实习/指导、评阅和答辩成绩的评定。2. 学生完成的操作:个人信息的管理,选择课题,查询成绩。3. 管理人员:对教师、学生的信息查询,添

4、加和删除;系统开放管理;选课期间调E-R 图:(二) 系统模块结构设计通过对系统功能的分析,毕业设计管理系统功能如图2.2所示。图2.2毕业设计管理系统功能图通过上图的功能分析,把整个系统划分为 5个模块:1 、文件1)新建:新建窗口;2)打开:打开本地图片;3)保存:保存图形;4)退出:关闭窗体2 、编辑1)撤销2)重做3 、帮助1)关于4 、工具栏:如上图所示。5 、状态栏:显示鼠标位置、显示本地时间、作者三、系统的设计与实现(一) 概要设计系统数据流程设计概要设计阶段的基本目标是用比较抽象的方式确定系统如何完成预定 的任务,也就是说,应该确定系统的物理配置方案,并且进而确定组成系 统的每

5、个程序的结构。从数据流图出发设想完成系统功能的若干种合理的 物理方案,从中选择一个最佳方案。然后进行软件结构设计,确定软件由 哪些模块组成以及这些模块的动态调用关系。本设计包括管理员、学生模块功能的设计。首先管理员登录系统,对系统进行初始化,并可设置系统的开放与关 闭。系统初始化后教师可以出题,教师出题完毕管理员审核课题,审核通 过后学生才可进行选题,学生选题完后教师可以选择符合题目要求的学生, 形成双向选择。如当出题选题完毕,教师和学生建立了双向的关系后,进 入到做题阶段。管理员和教师通过文件上传与下载、留言板、新闻发布和 联系等方式对学生完成毕设的情况进行监督。指导教师指导学生完成设计后,

6、进入到评阅阶段。管理员分配评阅教 师后。系统数据流图如下:敎师信息*D1-修改个人倩息身份验证,SOT 1打分卩Dllh查询.评阅选择评阅老师Q选择答辩老厢审题答黑D»学生选题亠D8选题结冕屮»車核通诅的课题D3管理员信息D舁学主信息祕D弭评曲黑心D7"审複意见a管理员心一酬验证* D2谨题信息-图3-1系统数据流图数据字典设计1.管理员信息数据字典表3-1管理员信息数据字典 名字:管理员信息另U名:person描述:管理员的相关信息定义:管理员信息=管理员id+管理员name+管理员password 位置:存于数据库,在维护系统时应用2.教师信息数据字典表3-2

7、教师信息数据字典名字 别名 描述 定义 位置教师信息teacher教师的相关信息教师信息=教师id+教师存于数据库,在出题和进程控制时应用表3-3学生信息数据字典名字 别名 描述 定义 位置学生信息stude nt学生的相关信息学生信息=学生id+学生+学生性别+学生密码 存于数据库,在选题和进程控制时应用表3-4课题信息数据字典名字 别名 描述 定义 位置课题信息title课题的相关信息课题信息=课题id+课题名+出题教师+需求人数+课题要求 存于数据库,在出题、选题时应用(二)详细设计321系统概述详细设计阶段的关键任务是确定怎样具体地实现用户需要的软件系 统,也就是要设计出程序的“蓝图”

8、。除了应该保证软件的可靠性之外,使 将来编写出的程序可读性好、容易理解、容易测试和维护,是详细设计阶 段最重要的目标。设计的模块有出题、选题子系统、系统维护子系统和评阅答辩管理等。 最初时管理员应对系统进行初始化,初始化完后,教师拥有权限进行出题 操作,教师出题完毕,管理员应对该课题进行审核,审核通过后学生这时 拥有权限进行选课操作,学生选课操作完毕,这时,教师可以从选择他所 出课题的学生中选择适合该课题的学生,达到一种双向的自主选择。操作 完毕后,可能存在某些学生没有选上题目,这时可以通过管理员的调剂操 作来处理,把没选题的学生调剂到缺少人数的课题或者重新出题来满足要求,是每个学生都有题可做

9、。这时,指导教师应指导学生完成毕业设计, 完成后应由评阅教师进行评阅。选题阶段首先由学生通过登录自己的界面,可以看到题目的全部信息 并且进行选择。在达到限定时间后,由管理员通过人工干预的方式确定最 终的选题结果。在确定的时间和学生完成选题后,由管理员根据题目和学 生的具体情况,通过人工干预的方式,进行处理,确定每一个学生的题目, 协调学生和题目之间的关系。Y选题Y图4-4选题流程图登录成功?查看课题信息审核课题提交课题课题通过确定课题选择学生成功?结束322系统流程图图4-7系统流程图四、系统测试(一)管理员功能测试该按钮的使用方法,测试的具体步骤,测试用例的选取,测试的结果。(如图4.1-4

10、.4)L寸CXI寸(二) 学生模块功能测试(如图测试模块的使用方法,测试该按钮实现的功能,测试的结果421)欢迎V高立昇A同学登葩本豕统图 4.2.2五、总结系统完成了可画“三角形、四边形、圆形、直线、弧形”等;可选择 画图线条颜色;可画图线条粗细;可按钮清除所画图形;可撤销,重做功 能。系统唯一的缺点就是在鼠标指针点击画笔和橡皮擦工具时指针无法变 成画笔和橡皮擦的图标。在这两周的编程过程中,我的的确确学到了不少的东西,无论是从课 外书,还是网上资料,或是同学给我的帮助,都大有收获。对于我们大一 新生来说,学到的东西本来就不算不多,跟别谈运用了,这样的实习给我 们的收获远远是书上所不能给的。只

11、有当真真正正运用的时候,才是查漏 补缺的最佳时机,知道自己有哪些不足和知识点的遗漏。并且知识是需要 自己去总结的,一本书上的知识是远远不够的,只有从多本书中总结出对 自己有用的信息,才能最大的学习到知识。在这周的实习课中我还总结出了,学习不单单是学习书本上的知识,更 重要的是付诸于实践,实践能让我们学到更多更实用的东西,在实践中我 能感受到学到的东西不一定会运用,所以,我希望我们能够把实践与学习 相结合,让我们能够全面发展。六、附件(代码、部分图表)using System;using System.ComponentModel;using System.Data;using System.D

12、rawing;using System.Linq;using System.Text;namespace 课设 pictureboxpublic partial class Form1 : Formpublic Form1()In itializeComp onen t();privatebool f =false ;privateGraphics ig;private int x1, y1, x2, y2, x3, y3, x4, y4;privatePen pen, eraser;privateBitmap bt, sbt;privateint type = 0;privateColor

13、pen color = Color .Black;private Color bgcolor = Color .White;privateint pen width =1;private Cursor curearser, curpen;private Stack <Bitmap > history, now;private void Form1_Load( object sender,EventArgs e)Graphics g1 = pictureBox1.CreateGraphics();pen =new Pen(pe ncolor, pen width);eraser =n

14、ew Pen (bgcolor, 30);bt =new Bitmap (pictureBoxl.Width, pictureBoxl.Height, g1);ig =Graphics .Fromlmage(bt);pictureBoxl.Cursor = curpen;/ 设置 picturebox 的光标为铅笔history =new Stack <Bitmap >();now =new Stack <Bitmap >();private void 退出 ToolStripMenultem_Click(object sender,EventArgs e)Applic

15、ati on .Exit();/打开图片格式的文件private void 打开 ToolStripMenultem_Click(object sender,EventArgs e)OpenFileDialog openPic = new OpenFileDialog ();"C:userspublicpictures"/打开文件的途径;/打开文件ope nPicn itialDirectory =ope nPic.Filter ="ImageFiles(*.jpg,*.p ng,*.gif,*.bmp)|*.jpg;*.p ng;*.gif;*.bmp|AII

16、Files(*.*)|*.*" 的格式ope nPic.Filterl ndex = 2;openPic.RestoreDirectory =true ;if (openPic.ShowDialog() = DialogResult .OK)bt =new Bitmap (openPic.FileName);pictureBox1 .Im age = bt;ig =Graphics .FromImage(bt);/新建画板private void 新建 ToolStripMenultem_Click(object sender,EventArgs e)pictureBox1.Refr

17、esh();Graphics g = pictureBox1.CreateGraphics();g.Clear(bgcolor);ig.Clear(bgcolor);toolStripStatusLabel2.Text ="新建画板”;/保存文件private void 保存 ToolStripMenultem_Click( object sender,EventArgs e)SaveFileDialog svImg = new SaveFileDialog ();svImg .In itialDirectory ="C:userspublicpictures"s

18、vImg.Filter ="BMP文件(*.bmp)|*.bmp"svImg.FilterI ndex = 2;svImg.RestoreDirectory =true ;if (svlmg.ShowDialog() = DialogResult .OK)pictureBox1 .Im age.Save(svImg.FileName);private void pictureBox1_MouseMove( object sender,MouseEventArgs e)int x, y, w, h;if (toolStrip1.Enabled =true )toolStrip

19、StatusLabel3.Text =string .Format( "x:0,y:1", e.X, e.Y);/显示鼠标位置if (f)switch (type)/初始画笔case 0:x2 = e.X; y2 = e.Y;ig.DrawL in e(pe n, x1, y1, x2, y2);x1 = x2; y1 = y2; pictureBox1 .Im age = bt;break;/画三角形case 1:x2 = e.X;y2=e.Y;x3 = x1 * 2 - x2;y3=y2;ig.Clear(bgcolor);ig.Drawlmage(sbt, 0, 0)

20、;ig.DrawL in e(pe n, x1, y1, x2, y2);ig.DrawL in e(pe n, x1, y1, x3, y3);ig.DrawL in e(pe n, x2, y2, x3, y3); pictureBox1 .Im age = bt;break;/画矩形case 2:x2 = e.X; y2 = e.Y;ig.Clear(bgcolor);ig.DrawImage(sbt, 0, 0);Math.Abs(y1 - y2);Math.Abs(y1 - y2);x = x1 < x2 ? x1 : x2; y = y1 < y2 ? y1 : y2;

21、 w =Math.Abs(x1 - x2); h =ig.DrawRecta ngle(pe n, x, y, w, h); pictureBoxI .Im age = bt;break;/画圆case 3:x2 = e.X; y2 = e.Y;ig.Clear(bgcolor);ig.DrawImage(sbt, 0, 0);x = x1 < x2 ? x1 : x2; y = y1 < y2 ? y1 : y2; w =Math.Abs(x1 - x2); h =ig.DrawEllipse(pen, x, y, w, h); pictureBoxI .Im age = bt;

22、break ;/画直线case 4:x2 = e.X; y2 = e.Y;ig.Clear(bgcolor);ig.Drawlmage(sbt, 0, 0);ig.DrawL in e(pe n, x1, y1, x2, y2); pictureBox1 .Im age = bt;break;/画弧线case 5:x2 = e.X; y2 = e.Y;x3 = x1 * 2 - x2;y3=y2;x4 = x3;y4=y3*2-y2;ig.Clear(bgcolor);ig.DrawImage(sbt, 0, 0);ig.DrawBezier(pen, x1, y1, x2, y2, x3,

23、y3, x4, y4); pictureBoxl .Im age = bt;break;/橡皮case 6 :x2 = e.X; y2 = e.Y; eraser.Color = bgcolor;ig.DrawLi ne(eraser, x1, y1, x2, y2); x1 = x2; y1 = y2;pictureBoxl .Im age = bt;break;MouseEve ntArgs e)private void pictureBox1_MouseDown( object sender, Bitmap mjl = new Bitmap (bt);history.Push(mjl);

24、f =true ;x1 = e.X; y1 = e.Y;/给坐标变量赋值if (type != 0)sbt =new Bitmap (bt);private void pictureBox1_MouseUp( object sender,MouseEventArgs e)f =false ;/当stack中包含的元素不为0时撤销和重做图标可用if (now.Count != 0)撤销 ToolStripMenultem.Enabled =true ;撤销 toolStripButton.Enabled = true ;if (history.Count != 0)重做 ToolStripMen

25、ultem.Enabled =true ;重做 toolStripButton.Enabled = true ;private void toolStripButton 1_Click(object sender,EventArgs e)/实先画三角形功能,并点击三角形图标后背景颜色为绿色type = 1;Color .LawnGreen;Color .Transparent;Color .Transparent;Color .Transparent;Color .Transparent;Color .Transparent;Color .Transparent;"三角形”;pict

26、ureBox1.Cursor = curpe n; toolStripButt on 1.BackColor = toolStripButton 2.BackColor = toolStripButton 3.BackColor = toolStripButt on 4.BackColor = toolStripButt on 5.BackColor = toolStripButto n11.BackColor = toolStripButton 9.BackColor = toolStripStatusLabel2.Text =private void toolStripButton2_Cl

27、ick(object sender,EventArgs e)/实现画矩形功能,并点击矩形图标后背景颜色为绿色Color .LawnGreen; Color .Transparent;Color .Transparent;Color .Transparent;Color .Transparent;Color .Transparent;Color .Transparent;“矩形”;type = 2; pictureBox1.Cursor = curpe n; toolStripButton 2.BackColor = toolStripButt on 1.BackColor = toolStri

28、pButton 3.BackColor = toolStripButt on 4.BackColor = toolStripButt on 5.BackColor = toolStripButto n11.BackColor = toolStripButton 9.BackColor = toolStripStatusLabel2.Text = private void toolStripButton3_Click(object sender,EventArgs e)/实现画圆功能,并点击圆图标后背景颜色为绿色type = 3;pictureBox1.Cursor = curpe n; too

29、lStripButto n3.BackColor = toolStripButton 2.BackColor = toolStripButt on 1.BackColor = toolStripButt on 4.BackColor = toolStripButt on 5.BackColor = toolStripButto n11.BackColor = toolStripButton 9.BackColor = toolStripStatusLabel2.Text =Color .LawnGreen;Color .Transparent; Color .Transparent;Color

30、 .Transparent;Color .Transparent;Color .Transparent;Color .Transparent;"圆"private void toolStripButton4_Click(object sender,/实现画直线功能,并点击直线图标后背景颜色为绿色EventArgs e)type = 4;pictureBox1.Cursor = curpe n; toolStripButt on 4.BackColor = toolStripButton 2.BackColor = toolStripButton 3.BackColor =

31、toolStripButt on 1.BackColor = toolStripButt on 5.BackColor = toolStripButto n11.BackColor = toolStripButton 9.BackColor = toolStripStatusLabel2.Text =Color .LawnGreen;Color .Transparent;Color .Transparent;Color .Transparent;Color .Transparent;Color .Transparent;Color .Transparent;"直线"priv

32、ate void toolStripButton5_Click(object sender,/实现画弧线功能,并点击弧线图标后背景颜色为绿色EventArgs e)toolStripButt on 5.BackColor = toolStripButton 2.BackColor = toolStripButton 3.BackColor = toolStripButt on 4.BackColor = toolStripButt on 1.BackColor = toolStripButto n11.BackColor = toolStripButton 9.BackColor = tool

33、StripStatusLabel2.Text = type = 5; pictureBox1.Cursor = curpe n;Color .LawnGreen;Color .Transparent;Color .Transparent;Color .Transparent;Color .Transparent;Color .Transparent;Color .Transparent;"曲线”;private void toolStripButton 11_Click(object sender.EventArgs e)/实现铅笔画任意线功能,并点击铅笔图标后背景颜色为绿色Colo

34、r .LawnGreen;Color .Transparent;Color .Transparent;Color .Transparent;Color .Transparent;Color .Transparent;Color .Transparent;"铅笔”;object sender,EventArgs e)type = 0; pictureBox1.Cursor = curpe n; toolStripButto n11.BackColor = toolStripButton 2.BackColor = toolStripButton 3.BackColor = toolSt

35、ripButt on 4.BackColor = toolStripButt on 1.BackColor = toolStripButt on 5.BackColor = toolStripButton 9.BackColor = toolStripStatusLabel2.Text =private void toolStripButton9_Click( /实现橡皮功能,并点击橡皮图标后背景颜色为绿色type = 6;Color .LawnGreen;Color .Transparent;Color .Transparent;Color .Transparent;Color .Trans

36、parent;Color .Transparent;Color .Transparent;"橡皮"pictureBox1.Cursor = curearser; toolStripButton 9.BackColor = toolStripButton 2.BackColor = toolStripButton 3.BackColor = toolStripButt on 4.BackColor = toolStripButt on 1.BackColor = toolStripButto n11.BackColor = toolStripButt on 5.BackCol

37、or = toolStripStatusLabel2.Text =/实现撤销功能,上一步private void 撤与肖 ToolStripMenultem_Click(object sender,EventArgs e)Bitmap mjl = new Bitmap (bt);no w.Push(mjl); bt = history. Pop(); pictureBox1 .Im age =/将对象移动到stack的顶部/移除并返回位于Stack顶部的对象=bt;ig =Graphics .FromImage(bt);pictureBox1.Refresh();/如果stack中的元素为0,

38、则撤销图标不可用if (history.Count = 0)撤销 ToolStripMenultem.Enabled =false/实现重做功能,下一步private void 重做 ToolStripMenultem_Click(object sender.EventArgs e)Bitmap mjl = new Bitmap (bt);history.Push(mjl);bt = no w.Pop();pictureBox1 .Im age = bt;ig =Graphics .Fromlmage(bt);pictureBox1.Refresh();if (now.Count = 0)重做

39、 ToolStripMenultem.Enabled =false ;/撤销快捷按钮private void toolStripButton12_Click( Bitmap mjl = new Bitmap (bt);no w.Push(mjl);bt = history. Pop();pictureBox1 .Im age = bt;ig =Graphics .FromImage(bt);pictureBox1.Refresh();if (history.Count = 0)撤销 toolStripButton.Enabled=/重做快捷按钮private void 重做 toolStripButton_Click( Bitmap mjl = new Bitmap (bt);history.Push(mjl);bt = no w.Pop();pictureBox1 .Im age = bt;ig =Graphics .FromImage(bt);pictureBox1.Refresh();if (now.Count = 0)重做 toolStripButto n.En abled=/用于铅笔颜色选择private void toolS

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论