版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
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 、状态栏:显示鼠标位置、显示本地时间、作者三、系统的设计与实现(一) 概要设计3.1.1 系统数据流程设计概要设计阶段的基本目标是用比较抽象的方式确定系统如何完成预定 的任务,也就是说,应该确定系统的物理配置方
5、案,并且进而确定组成系 统的每个程序的结构。从数据流图出发设想完成系统功能的若干种合理的 物理方案,从中选择一个最佳方案。然后进行软件结构设计,确定软件由 哪些模块组成以及这些模块的动态调用关系。本设计包括管理员、学生模块功能的设计。首先管理员登录系统,对系统进行初始化,并可设置系统的开放与关 闭。系统初始化后教师可以出题,教师出题完毕管理员审核课题,审核通 过后学生才可进行选题,学生选题完后教师可以选择符合题目要求的学生, 形成双向选择。如当出题选题完毕,教师和学生建立了双向的关系后,进 入到做题阶段。管理员和教师通过文件上传与下载、留言板、新闻发布和 邮箱联系等方式对学生完成毕设的情况进行
6、监督。指导教师指导学生完成设计后,进入到评阅阶段。管理员分配评阅教 师后系统数据流图如下:D”管理员信息D并审核通过的谍题D”学生蓿息图3-1系统数据流图3.1.2数据字典设计1.管理员信息数据字典表3-1管理员信息数据字典 名字:管理员信息另U名:person描述:管理员的相关信息定义:管理员信息=管理员id+管理员name+管理员password 位置:存于数据库,在维护系统时应用2.教师信息数据字典表3-2教师信息数据字典名字 别名 描述 定义 位置教师信息teacher教师的相关信息教师信息=教师id+教师姓名 存于数据库,在出题和进程控制时应用表3-3学生信息数据字典名字 别名 描述
7、 定义 位置学生信息stude nt学生的相关信息学生信息=学生id+学生姓名+学生性别+学生密码 存于数据库,在选题和进程控制时应用表3-4课题信息数据字典名字 别名 描述 定义 位置课题信息title课题的相关信息课题信息=课题id+课题名+出题教师+需求人数+课题要求 存于数据库,在出题、选题时应用(二)详细设计3.2.1系统概述详细设计阶段的关键任务是确定怎样具体地实现用户需要的软件系 统,也就是要设计出程序的“蓝图”。除了应该保证软件的可靠性之外,使 将来编写出的程序可读性好、容易理解、容易测试和维护,是详细设计阶 段最重要的目标。设计的模块有出题、选题子系统、系统维护子系统和评阅答
8、辩管理等。 最初时管理员应对系统进行初始化,初始化完后,教师拥有权限进行出题 操作,教师出题完毕,管理员应对该课题进行审核,审核通过后学生这时 拥有权限进行选课操作,学生选课操作完毕,这时,教师可以从选择他所 出课题的学生中选择适合该课题的学生,达到一种双向的自主选择。操作 完毕后,可能存在某些学生没有选上题目,这时可以通过管理员的调剂操 作来处理,把没选题的学生调剂到缺少人数的课题或者重新出题来满足要求,是每个学生都有题可做。这时,指导教师应指导学生完成毕业设计, 完成后应由评阅教师进行评阅。选题阶段首先由学生通过登录自己的界面,可以看到题目的全部信息 并且进行选择。在达到限定时间后,由管理
9、员通过人工干预的方式确定最 终的选题结果。在确定的时间内和学生完成选题后,由管理员根据题目和 学生的具体情况,通过人工干预的方式,进行处理,确定每一个学生的题 目,协调学生和题目之间的关系。Y选题Y图4-4选题流程图3.2.2系统流程图四、系统测试(一)管理员功能测试该按钮的使用方法,测试的具体步骤,测试用例的选取,测试的结果。(如图4.1-4.4)4.24.3丁vn I hns-r Krvmn莘总第會暂轉叫5习口 Pl图4.4(二) 学生模块功能测试(如图测试模块的使用方法,测试该按钮实现的功能,测试的结果421)用户窑:%消.1图 .3五、总结系统完成了可画
10、“三角形、四边形、圆形、直线、弧形”等;可选择 画图线条颜色;可画图线条粗细;可按钮清除所画图形;可撤销,重做功 能。系统唯一的缺点就是在鼠标指针点击画笔和橡皮擦工具时指针无法变 成画笔和橡皮擦的图标。在这两周的编程过程中,我的的确确学到了不少的东西,无论是从课 外书,还是网上资料,或是同学给我的帮助,都大有收获。对于我们大一 新生来说,学到的东西本来就不算不多,跟别谈运用了,这样的实习给我 们的收获远远是书上所不能给的。只有当真真正正运用的时候,才是查漏 补缺的最佳时机,知道自己有哪些不足和知识点的遗漏。并且知识是需要 自己去总结的,一本书上的知识是远远不够的,只有从多本书中总结出对 自己有
11、用的信息,才能最大的学习到知识。在这周的实习课中我还总结出了,学习不单单是学习书本上的知识,更 重要的是付诸于实践,实践能让我们学到更多更实用的东西,在实践中我 能感受到学到的东西不一定会运用,所以,我希望我们能够把实践与学习 相结合,让我们能够全面发展。六、附件(代码、部分图表)using System;using System.Collections.Generic;using System.ComponentModel;using System.Data;using System.Drawing;using System.Linq;using System.Text;using Syst
12、em.Windows.Forms; using System.Drawing.Imaging;namespace 课设 picturebox public partial class Form1 : Formpublic Form1() InitializeComponent();private bool f = false ;private Graphics ig;private int x1, y1, x2, y2, x3, y3, x4, y4;private Pen pen, eraser;private Bitmap bt, sbt;private int type = 0;priv
13、ate Color pencolor = Color .Black;private Color bgcolor = Color .White;private int penwidth =1;private Cursor curearser, curpen;private Stack history, now;private void Form1_Load( object sender, EventArgs e)Graphics g1 = pictureBox1.CreateGraphics(); pen =new Pen(pencolor, penwidth);eraser =new Pen(
14、bgcolor, 30);bt =new Bitmap (pictureBox1.Width, pictureBox1.Height, g1);ig =Graphics .FromImage(bt);pictureBox1.Cursor = curpen;/ 设置 picturebox 的光标为铅笔history = new Stack ();now = new Stack ();private void 退出 ToolStripMenuItem_Click( object sender, EventArgs e) Application .Exit();/ 打开图片格式的文件private
15、void 打开 ToolStripMenuItem_Click( object sender, EventArgs e) OpenFileDialog openPic = new OpenFileDialog ();openPic.InitialDirectory =C:userspublicpictures;/ 打开文件的途径openPic.Filter = Image; / 打开文件Files(*.jpg,*.png,*.gif,*.bmp)|*.jpg;*.png;*.gif;*.bmp|All Files(*.*)|*.* 的格式openPic.FilterIndex = 2;open
16、Pic.RestoreDirectory = true ;if (openPic.ShowDialog() = DialogResult .OK)bt =new Bitmap (openPic.FileName);pictureBox1.Image = bt;ig =Graphics .FromImage(bt);/ 新建画板private void 新建 ToolStripMenuItem_Click( object sender, EventArgs e) pictureBox1.Refresh();Graphics g = pictureBox1.CreateGraphics();g.C
17、lear(bgcolor);ig.Clear(bgcolor); toolStripStatusLabel2.Text = “新建画板” ;/ 保存文件private void 保存 ToolStripMenuItem_Click( object sender, EventArgs e) SaveFileDialog svImg = new SaveFileDialog ();svImg.InitialDirectory = C:userspublicpictures ;svImg.Filter =BMP文件(*.bmp)|*.bmp;svImg.FilterIndex = 2;svImg.R
18、estoreDirectory =true ;if (svImg.ShowDialog() = DialogResult .OK)pictureBox1.Image.Save(svImg.FileName);private void pictureBox1_MouseMove( object sender, MouseEventArgs e) int x, y, w, h;if (toolStrip1.Enabled = true )toolStripStatusLabel3.Text =string .Format( x:0,y:1, e.X, e.Y);/显示鼠标位置 if (f)swit
19、ch (type)/ 初始画笔case 0:x2 = e.X; y2 = e.Y;ig.DrawLine(pen, x1, y1, x2, y2);x1 = x2; y1 = y2; pictureBox1.Image = bt;break ;/ 画三角形 case 1:x2 = e.X;y2=e.Y;x3 = x1 * 2 - x2;y3=y2;ig.Clear(bgcolor);ig.DrawImage(sbt, 0, 0);ig.DrawLine(pen, x1, y1, x2, y2);ig.DrawLine(pen, x1, y1, x3, y3);ig.DrawLine(pen,
20、x2, y2, x3, y3); pictureBox1.Image = 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; w =Math.Abs(x1 - x2); h =ig.DrawRectangle(pen, x, y, w, h); pictureBox1.Image = bt;break ;/ 画圆case 3:x
21、2 = 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); pictureBox1.Image = bt;break ;/ 画直线 case 4:x2 = e.X; y2 = e.Y; ig.Clear(bgcolor); ig.DrawImage(sbt, 0, 0);ig.DrawLine(pen, x1, y1, x2, y2);
22、pictureBox1.Image = 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, y3, x4, y4); pictureBox1.Image = bt;break ;/ 橡皮case 6 :x2 = e.X; y2 = e.Y; eraser.Color = bgcolor; ig.DrawLine(erase
23、r, x1, y1, x2, y2); x1 = x2; y1 = y2; pictureBox1.Image = bt; break ;MouseEventArgs e)private void pictureBox1_MouseDown( object sender, Bitmap mjl = new Bitmap (bt); history.Push(mjl);f = true ;x1 = e.X; y1 = e.Y; / 给坐标变量赋值if (type != 0)sbt = new Bitmap (bt);f = false ;/ 当 stack 中包含的元素不为 0时撤销和重做图标可
24、用 if (now.Count != 0)撤销 ToolStripMenuItem.Enabled = true ; 撤销 toolStripButton.Enabled =true ;if (history.Count != 0)重做 ToolStripMenuItem.Enabled = true ; 重做 toolStripButton.Enabled =true ; private void toolStripButton1_Click( object sender,/ 实先画三角形功能,并点击三角形图标后背景颜色为绿色 type = 1;EventArgs e)pictureBox1
25、.Cursor = curpen; toolStripButton1.BackColor = toolStripButton2.BackColor = toolStripButton3.BackColor = toolStripButton4.BackColor = toolStripButton5.BackColor = toolStripButton11.BackColor = toolStripButton9.BackColor = toolStripStatusLabel2.Text =Color .LawnGreen;Color .Transparent;Color .Transpa
26、rent;Color .Transparent;Color .Transparent;Color .Transparent;Color .Transparent; 三角形” ;private void toolStripButton2_Click( object sender, / 实现画矩形功能,并点击矩形图标后背景颜色为绿色EventArgs e)type = 2; pictureBox1.Cursor = curpen; toolStripButton2.BackColor = toolStripButton1.BackColor = toolStripButton3.BackColor
27、 = toolStripButton4.BackColor = toolStripButton5.BackColor = toolStripButton11.BackColor = toolStripButton9.BackColor = toolStripStatusLabel2.Text =Color .LawnGreen;Color .Transparent;Color .Transparent;Color .Transparent;Color .Transparent;Color .Transparent;Color .Transparent; “矩形” ;/ 实现画圆功能 , 并点击
28、圆图标后背景颜色为绿色 type = 3;pictureBox1.Cursor = curpen; toolStripButton3.BackColor = toolStripButton2.BackColor = toolStripButton1.BackColor = toolStripButton4.BackColor = toolStripButton5.BackColor = toolStripButton11.BackColor = toolStripButton9.BackColor = toolStripStatusLabel2.Text =Color .LawnGreen;C
29、olor .Transparent;Color .Transparent;Color .Transparent;Color .Transparent;Color .Transparent;Color .Transparent; 圆;private void toolStripButton4_Click( object sender, / 实现画直线功能,并点击直线图标后背景颜色为绿色 type = 4;EventArgs e)pictureBox1.Cursor = curpen; toolStripButton4.BackColor = toolStripButton2.BackColor
30、= toolStripButton3.BackColor = toolStripButton1.BackColor = toolStripButton5.BackColor = toolStripButton11.BackColor = toolStripButton9.BackColor = toolStripStatusLabel2.Text =Color .LawnGreen;Color .Transparent;Color .Transparent;Color .Transparent;Color .Transparent;Color .Transparent;Color .Trans
31、parent; 直线 ;private void toolStripButton5_Click( object sender, / 实现画弧线功能,并点击弧线图标后背景颜色为绿色EventArgs e)toolStripButton5.BackColor = toolStripButton2.BackColor = toolStripButton3.BackColor = toolStripButton4.BackColor = toolStripButton1.BackColor = toolStripButton11.BackColor = toolStripButton9.BackCol
32、or = toolStripStatusLabel2.Text = type = 5;pictureBox1.Cursor = curpen;Color .LawnGreen;Color .Transparent;Color .Transparent;Color .Transparent;Color .Transparent;Color .Transparent;Color .Transparent; 曲线 ;/ 实现铅笔画任意线功能,并点击铅笔图标后背景颜色为绿色type = 0;Color .LawnGreen;Color .Transparent;Color .Transparent;C
33、olor .Transparent;Color .Transparent;Color .Transparent;Color .Transparent; 铅笔 ;object sender, EventArgs e)pictureBox1.Cursor = curpen; toolStripButton11.BackColor = toolStripButton2.BackColor = toolStripButton3.BackColor = toolStripButton4.BackColor = toolStripButton1.BackColor = toolStripButton5.B
34、ackColor = toolStripButton9.BackColor = toolStripStatusLabel2.Text =private void toolStripButton9_Click(type = 6;pictureBox1.Cursor = curearser; toolStripButton9.BackColor = toolStripButton2.BackColor = toolStripButton3.BackColor = toolStripButton4.BackColor = toolStripButton1.BackColor = toolStripB
35、utton11.BackColor = toolStripButton5.BackColor = toolStripStatusLabel2.Text =/ 实现橡皮功能,并点击橡皮图标后背景颜色为绿色Color .LawnGreen;Color .Transparent;Color .Transparent;Color .Transparent;Color .Transparent;Color .Transparent;Color .Transparent;/ 实现撤销功能,上一步private void 撤销 ToolStripMenuItem_Click( 橡皮 ;object send
36、er, EventArgs e)Bitmap mjlnew Bitmap (bt);now.Push(mjl);bt = history.Pop(); pictureBox1.Image =/ 将对象移动到 stack 的顶部/ 移除并返回位于 Stack 顶部的对象 bt;ig = Graphics .FromImage(bt); pictureBox1.Refresh();/ 如果 stack 中的元素为 0,则撤销图标不可用 if (history.Count = 0)撤销 ToolStripMenuItem.Enabled = false / 实现重做功能,下一步Bitmap mjl
37、= new Bitmap (bt); history.Push(mjl); bt = now.Pop(); pictureBox1.Image = bt; ig = Graphics .FromImage(bt); pictureBox1.Refresh();if (now.Count = 0) 重做 ToolStripMenuItem.Enabled = false / 撤销快捷按钮private void toolStripButton12_Click(Bitmap mjl = new Bitmap (bt);now.Push(mjl);bt = history.Pop();picture
38、Box1.Image = 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 = now.Pop();pictureBox1.Image = bt;ig = Graphics .FromImage(bt);pictureBox1.Refresh();if (now.Count = 0)重做 toolStripButton.Enabled=object sender, EventArgs e)falseobject sender,
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- LNG接收转运基地项目可行性研究报告模板立项申批备案
- 广东深圳市龙华区行知学校2026-2027学年七年级上学期9月阶段检测道德与法治试题(含答案)
- 2026年嘉祥语文面试题目及答案
- 吉林成考专升本艺术概论真题刷题卷
- 广东成考高升专史地综合真题带答案解析
- 2026年菏泽高中历年会考题目及答案
- 2026南京大学物理学院招聘特任副研究员1人笔试备考题库及答案解析
- 2026年中国联通上海市分公司人员招聘考试模拟试题及答案
- 2026中国人民大学医院招聘非事业编制工作人员8名考试参考题库及答案解析
- 2026年景德镇陶瓷大学招聘非事业编制工作人员6人(第二批)考试备考题库及答案解析
- 第9课《天上有颗南仁东星》课件(内嵌视频)2026-2027学年统编版语文八年级上册
- 2026年污水处理厂安全试题及答案
- 2025年山东省安全员职业资格B证考试试题试卷(含答案)
- 中国心肺复苏指南(2026年更新版)
- 【完整版】南宁市2026年教师招聘笔试考题+答案解析
- 维生素B族课件
- 2025年四川省宜宾市辅警招聘考试题题库(含参考答案)
- 秋季安全施工培训课件
- DB4201∕T 693-2024 建筑与市政工程软弱地基基础技术规程
- 物流司机制度管理制度
- 广东市政工程施工安全管理资料统一用表 上册
评论
0/150
提交评论