画图板程序报告

合集下载

绘图JAVA程序报告(含程序)

绘图JAVA程序报告(含程序)
本次编程的环境为 JDK。 2.4.工具说明
本次编程工具为 UltraEdit。
3 系统流程
开始
曲线 按钮
直线 按钮
画圆 按钮
矩形 按钮
粗线 按钮
填充 颜色
清除
画笔 粗细
f=1
f=2
f=3
f=4
f=5
填充
Y
N
fill=true
fill=false
size 改变
改变颜色
Y
N
输入颜 色
f=1
f=2
f=3
通过 JCheckBox 创建一个按钮,利用按钮监听器决定是否要描绘填 充图形,如果是则将实现赋值 fill=true,否则 fill=false,然后通过 布尔值判断在描绘图形时是 draw 还是 fill,如果布尔值是 ture 时则实 现了图形的填充。 2.2.4 画笔的粗细及画笔的颜色变更
画笔的粗细主要是通过不断地重画填充圆来实现,通过鼠标的拖拽 不断地在画板上进行重画;而粗细则由创建的 JSlider 来调节圆的半径, 如果圆的半径越大则所绘出的曲线越粗,反则越细;画笔的颜色变更主 要通过创建的 JButton 按钮,利用按钮监听器,当按下了按钮,则实现 c=JColorChooser.showDialog(right,"choose",c)语句,从而把初始的 画笔颜色(黑色)改变。 2.2.5 实现鼠标单击和鼠标拖拽进行绘图
在实现绘画的功能,主要通过创建 ButtonGroup 从而把所有的 JRadioButton 都添加进去,从而达到在描绘图形时多选一的选择功能; 利用按钮监听器,利用 Object source=event.getSource()语句当 source==op1 时进行曲线绘画,在实现曲线绘画的功能时,主要利用了 鼠标的点击和鼠标的拖拽,通过鼠标的点击来扑捉第一个坐标点,然后 利用鼠标的拖拽来不断变换第一个点的坐标(利用 sx=x 和 sy=y 语句), 从而将所有点都连接起来,最终实现了在画板上描绘曲线的功能;当 source==op2 时进行直线绘画,在实现直线绘画的功能时,主要利用了 鼠标的点击,鼠标的释放和鼠标的拖拽,通过鼠标的点击来扑捉直线的 第一个坐标点,然后利用鼠标的拖拽选择直线的另一个点,最终通过鼠 标的释放在画板上描绘出直线来;当 source==op3 时进行圆和椭圆绘画, 在实现圆和椭圆绘画的功能时,主要利用了鼠标的点击,鼠标的释放和 鼠标的拖拽,通过鼠标的点击来扑捉圆和椭圆的一个坐标点,然后利用 鼠标的拖拽选择圆和椭圆的大小,最终通过鼠标的释放在画板上描绘出 圆和椭圆来;当 source==op4 时进行矩形绘画,在实现矩形绘画的功能 时,主要利用了鼠标的点击,鼠标的释放和鼠标的拖拽,通过鼠标的点 击来扑捉矩形的一个坐标点,然后利用鼠标的拖拽选择矩形的大小,最 终通过鼠标的释放在画板上描绘出矩形来。 2.2.3 填充功能(其中包括圆的填充,椭圆圆的填充,矩形圆的填充)

绘图程序 课程设计报告

绘图程序 课程设计报告

绘图工具用户签名: 刘建开发成员:刘建开发时间:2010/12/17 学号:**********目录0引言 (3)1 工作计划 (3)1.1主要工作阶段划分 (3)1.2工作任务分工 (3)2需求分析 (4)2.1概述 (4)2.2用户分析 (4)2.3 约束条件 (4)2.4功能需求 (4)2.5用户界面需求 (5)3设计与实现 (5)3.1概述 (5)3.2详细设计 (5)3.1.1类的抽象及设计 (5)3.1.2表结构设计(涉及到数据库的题目需要完成该部分内容) (6)3.3 主要程序文件 (6)3.4开发环境以部署环境要求 (7)3.5 主要源码 (7)4.1概述 (7)4.2 测试环境 (10)4.3测试计划 (10)4.4测试项目及结果 (11)5、工作总结 (14)5.1工作成果 (14)5.2过程分析 (14)5.3经验教训及其分析 (15)0引言在日常生活中人们会经常绘图,而绘图工具提供给了人们一种便捷有效的绘图途径。

它不仅可以实现简单的绘图,如绘制直线、圆形、举行等,而且还可以对这些图形填充颜色。

并且可以根据个人爱好和实际需求自己设置画笔颜色以及画笔宽度。

该绘图工具界面简单清晰,使用简单方面,能满足很大一部分人的需求。

1 工作计划1.1主要工作阶段划分1.2工作任务分工2需求分析2.1概述本软件主要用于计算机windows 2000/XP以上版本的用户的使用,这次课程设计一般是实现绘图的功能。

程序除了能实现:绘制直线、圆形、矩形等图形外,还能实现对圆形、矩形等图形的填充等功能;程序还能实现清除界面所有图形、清除最近画的图等功能。

2.2用户分析普通用户看待一个软件的好坏主要是程序的实用性,界面的简洁美观性,程序所占资源的大小,以及程序运行期间的人性化的设置,所以要想让用户满意就要做到以上几点。

其中,这几点最重要的就是程序的实用性。

绘图工具,对于生活中的普通人来说,只要能实现简单的绘图,填充功能就行了。

画图板 课程设计报告

画图板 课程设计报告

合肥学院计算机科学与技术系课程设计任务书2011~2012学年第二学期课程JA V A语言课程设计课程设计名称画图板专业班级08网络工程(1)指导教师金莹郭昌建2011年9月一、课程设计目的通过课程设计,学生在下述各方面的能力应该得到锻炼:(1)进一步巩固、加深学生所学专业课程《JAVA语言教程》的基本理论知识,理论联系实际,进一步培养学生综合分析问题,解决问题的能力。

(2)全面考核学生所掌握的基本理论知识及其实际业务能力,从而达到提高学生素质的最终目的。

(3)利用所学知识,开发小型应用系统,掌握运用JAVA语言编写调试应用系统程序,训练独立开发应用系统,进行数据处理的综合能力。

(4)掌握自顶而下的设计方法,将大问题进行模块化,领会结构化程序设计的方法。

(5)熟练掌握JA V A语言事件处理、图形界面、多媒体编程,灵活运用各种类库。

二、课程设计名称及内容课程设计名称:画图板设计内容:制作一个图形编辑系统—画图板,要求具有画笔、画各种图型,输入文字,橡皮檫等功能,具体参见附件中“画图板”。

三、任务和要求(1)能用拖橡皮檫的手法绘制各类图形(直线、椭圆、矩形、文字)(2)支持画笔颜色、文字大小设置;(3)能将画面中的所有图形存储到文件中;(4)能从文件读取图形进行增补;(5)采用对话框获取图形文件名;(6)利用鼠标选取图形,删除;四、设计方案提示可以采用橡皮筋技术来进行图形的绘制,绘制图形时鼠标的初始位置很关键,它关系到图形的初始位置,由于是在鼠标处于拖动状态下绘制图形,可以将鼠标按下时的位置设置为初始位置。

五、其它程序设计可在Eclipse、JDK1.5或JBuilder环境下实现六、参考资料[1]吕凤羽、马皓《JAVA程序设计》清华大学出版社[2] 耿祥义《JAVA课程设计》清华大学出版[3] 黄小东《Java课程设计案例精编》中国水利水电出版社[4]印旻《Java与面向对象程序设计》清华大学出版社。

Java画图板课程设计报告

Java画图板课程设计报告

目录1 引言................................................................................................... 错误!未定义书签。

课程设计选题 .................................................................................. 错误!未定义书签。

课程设计的目的 .............................................................................. 错误!未定义书签。

本选题的设计背景.......................................................................... 错误!未定义书签。

2 需求分析 .............................................................................................. 错误!未定义书签。

功能需求......................................................................................... 错误!未定义书签。

软件开发运行环境........................................................................ 错误!未定义书签。

3 总体设计 .............................................................................................. 错误!未定义书签。

画板设计报告

画板设计报告

青岛理工大学琴岛学院设计报告课题名称:画图板学院:青岛理工大学琴岛学院专业班级:计算机网络技术101班学号:20100312010学生:李经纬指导教师:张秀国青岛理工大学琴岛学院教务处2011年 12 月 30 日一、需求分析1.选题:程序的原型最先是老师在上课时演示的,老师指导我们做画图只能实现单一的画线功能,只可以画出直线或者图形,每次只能画出当前图形之前画出的图形不再显示,而且上课的时候只能实现几个颜色的画图,无法实现填充画图以及自由选择颜色。

经过查阅资料,手动添加了一些代码和函数实现了这些功能。

2.界面:(1)程序打开界面如下图1所示:图1 打开界面(2)程序打开界面如下图2所示:图2 设置界面3.功能划分:本画图板可以实现的功能主要有画点,画直线,画圆,画矩形,任意直线,设置直线颜色,设置填充颜色还有线条类型。

(1)画图菜单子菜单中可以选择画图形的方式,可以画出的图形有点、直线、矩形,椭圆、以及任意直线。

(2)选择画点功能可以在任意位置画出一个点,默认像素为1,颜色为黑色。

(3)选择画矩形可以画出一个由默认白色填充的矩形,关于填充色可以在颜色中进行选择自定义颜色。

(4)椭圆也可以实现和矩形相同的功能。

(5)可以选择画曲线。

(6)颜色菜单下可以选择图形颜色以及填充色。

(7)点击帮助可显示版本信息以及作者。

(8)设置菜单中有线段粗细和类型的选择及预览程序运行实现效果如下图3所示:图3.运行实现界面图4.版权信息4.用到的类表格、每个类中用到的函数及添加的命令响应表格、各资源对应的ID号表格:表1 用到的类表2 CMyDrawView类用到的函数及命令响应1.直线图元类的实现在头文件中添加如下代码,定义函数以及参数在CLine类下添加消息处理函数CShape(),添加代码:class CLine :public CShape{……CLine(COLORREF m_clrShape,CPoint m_ptOrigin,CPoint m_ptEnd,UINT m_nLineWidth,int m_nLineStyle);void Serialize(CArchive &archive);void Draw(CDC *pDC);public:COLORREF m_clrShape;CPoint m_ptOrigin,m_ptEnd;UINT m_nLineWidth;int m_nLineStyle;……};这样就实现了画直线的功能,其中CLine()表示绘制纯虚函数,参数为设备指针。

简易画图板设计报告分析

简易画图板设计报告分析

设计报告:Graphic简易画图板-----韩伟谢程焜肖越周峰电科二班1设计目的设计一个单文档类型的MFC AppWizard (exe)工程,工程取名为:Graphic。

此程序将实现简单的绘图功能,包括点、直线、矩形、椭圆、扇形和连续线的绘制。

并且能实现绘图的控制,包括线宽、线型和颜色的设置,图形的保存和打开以及笔刷的使用。

2 总体设计设计图如图6图63详细设计首先,新建一个单文档类型的MFC AppWizard (exe)工程,工程取名为:Graphic。

为此程序添加一个子菜单,菜单名称为“绘图”,并为其添加六个菜单项,分别用来控制不同图形的绘制。

当用户选择其中的一个菜单项后,程序将按照当前的选择进行相应图形的绘制。

添加的六个菜单项的ID及名称如表1所示。

然后分别为这六个菜单项添加命令响应,本程序让视类(CGraphicView)对这些菜单命令进行响应,这六个响应函数的名称分别如表1所示。

在程序运行以后,当用户单击某个菜单项时,应该把用户的选择保存起来,以便随后的绘图操作使用。

因此在CGraphicView类中添加一个私有变量m_nDrawType;用来保存用户的选择,该变量的定义如下所述:private: UINT m_nDrawType;接着,在视类的构造函数中将此变量初始化为0,程序代码如下:CGraphicView::CGraphicView(){// TODO: add construction code herem_nDrawType=0;}利用switch/case语句,来分别完成相应图形的绘制。

当用户选择【绘图】菜单下的不同子菜单项时,将变量m_nDrawType设置为不同的值。

程序代码如下:void CGraphicView::OnDot(){// TODO: Add your command handler code herem_nDrawType=1;}void CGraphicView::OnLine(){// TODO: Add your command handler code herem_nDrawType=2;}void CGraphicView::OnRectangle(){// TODO: Add your command handler code herem_nDrawType=3;}void CGraphicView::OnEllipse(){// TODO: Add your command handler code herem_nDrawType=4;}void CGraphicView::OnShanxing(){// TODO: Add your command handler code herem_nDrawType=5;}void CGraphicView::OnLianxuxian(){// TODO: Add your command handler code herem_nDrawType=6;}3.1点、直线、矩形、椭圆的绘制(周峰谢程焜)对于直线、矩形和椭圆,在绘制时都可有两点来确定其图形。

JAVA简单画板程序设计实验报告材料

JAVA简单画板程序设计实验报告材料

JAVA 期末画板实验报告课程题目:运用JAVA 语言编写一个画板程序,这个画板要有画图,特殊图形绘 制,颜色改变,画笔大小改变等功能. 设计思想:1. 发展界面设计2. 发展算法实现3. 运行调试4. 总结问题设计过程:A. 界面设计新建一个 Jframe 容器 , 然后定义一个 panel 〔 Panelconvas2〕,convas2 是工具栏.用 borderlayout 布置容器的边框布局, 将工具栏放在 NORTH 局部.完成界面设计.添加工具按键Panel canvas2 Panel<>;Button btn1 Button<"直线">;Button btn2 Button<"椭圆">;add<canvas2,BorderLayout.NORTH >;Button Button Button Button Choice Choice btn3btn4btn5btn6Button<"矩形">;Button<"去除">;Button<"画笔">;Button<"橡皮">; choiceChoice<>; choice1Choice<>;canvas2 .add<choice>;canvas2 .add<choice1>;canvas2 .add<btn1>;canvas2 .add<btn2>;canvas2 .add<btn3>;canvas2 .add<btn4>;canvas2 .add<btn5>;canvas2 .add<btn6>;在工具表中,有两个下拉菜单,分别收录画笔的大小和颜色.1. 画笔的大小:choice1 .add<"1">;choice1 .add<"3">;choice1 .add<"5">;choice1 .add<"7">;choice1 .add<"9">;2. 画笔颜色choice .add<"黑色">;choice .add<"蓝色">;choice .add<"红色">;choice .add<"黄色">;choice .add<"绿色">;3 展示画板B. 算法实现运用画板,首先要对工具栏按键和鼠标发展监听,然后对监听发展响应.运行相应程序发展画图1. 监听程序展示:choicechoice1btn1 .addActionListener<btn2btn3btn4btn5btn6addMouseListener<;addMouseMotionListener<;2. 按键监听响应监听到按键后,判断当前会话工具actionPerformed<ActionEvent e>{btn1>>{a= '1';}btn2>>{a= '2';}btn3>>{a= '3';}btn4>>{.getGraphics<>;.getHeight<>>;}btn5>>{a= '4';}btn6>>{a= '5';}}定义一个变量a,对按键监听发展响应,例如当监听到btn1 时赋值a=‘1’〔a 为char 型〕, 即当前工具为直线.但是当监听到btn4 时不发展对a 赋值而是直接发展去除操作, 由于去除操作是对画布发展去除,不参预鼠标事件, 因此可以直接执行.3. 鼠标监听响应a. 鼠标按钮按下事件,获取画图起始坐标x0,y0.mousePressed<MouseEvent e>{x0=e.getX<>;y0=e.getY<>;}b. 鼠标挪移事件mouseMoved<MouseEvent e>{}c. 鼠标按钮松开事件,此次响应完成对直线,椭圆,矩形发展绘制.mouseReleased<MouseEvent e>{.getGraphics<>;sizeBasicStroke<con,BasicStroke.CAP_BUTT,BasicStroke.JOIN_BEVEL>;g.setColor<b>;g.setStroke<size>;a>{'1':g.drawLine<x0, y0, e.getX<>, e.getY<>>;'2':g.drawOval<x0, y0, e.getX<> - x0, e.getY<> - y0>;'3':g.drawRect<x0, y0, e.getX<> - x0, e.getY<> - y0>;}}d. 鼠标进入事件:e. 鼠标离开事件:mouseDragged<MouseEvent e> {.getGraphics<>;size BasicStroke<con ,BasicStroke.CAP_BUTT ,BasicStroke.JOIN_BEVEL >;g.setColor<b >;g.setStroke<size >;a >{'4':g.drawLine<x0, y0, e.getX<>, e.getY<>>;x0 = e.getX<>;y0 = e.getY<>;'5':g.clearRect<x0 - 10, y0 - 10, 20, 20>;g.鼠标拖动事件: 此次响应实现画笔〔随笔划〕 ,橡皮的绘制 .. f.鼠标单击事件:x0 = e.getX<>;y0 = e.getY<>;}}4.下拉列表响应a.颜色下拉列表响应:choice>{choice .getSelectedIndex<>==0>b=Color.black;choice .getSelectedIndex<>==1>b=Color.BLUE;choice .getSelectedIndex<>==2>b=Color.red;choice .getSelectedIndex<>==3>b=Color.yellow;choice .getSelectedIndex<>==4>b=Color.green;}调用choice.getSelectedIndex<>返回被选中的选项的序号〔下拉列表中第一个选项序号为0,挨次递加.〕即发展选择颜色的操作b.画笔大小下拉列表响应:choice1>{choice1 .getSelectedItem<>=="1">{con=1;}choice1 .getSelectedItem<>=="3">{con=3;}choice1 .getSelectedItem<>=="5">{con=5;}choice1 .getSelectedItem<>=="7">{con=7;}choice1 .getSelectedItem<>=="9">{con=9;}}调用choice1.getSelectedItem<>返回被选中选项的标签文本字符串,即确定画笔的大小〔con〕.5.工具栏工具实现程序详解〔1〕.getGraphics<>;size=con,BasicStroke.CAP_BUTT,BasicStroke.JOIN_BEVEL>;g.setColor<b>;g.setStroke<size>;绘制图形用到类Graphics2D,其中包括不少绘制图形的方法, 定义一个Graphics2D类g,用getGraphics<>来得到一个Graphics2D对象,它相当于组建的绘图环境,可以发展各种绘图操作.个根本集合,这些图元使用Graphics2D 对象呈现,而该对象的Stroke 属性设置为此BasicStroke.其中con为画笔宽度路径和虚线线段外角,将路径线段连接在一起. 〔以上内容为网上查找资料所得.〕〔2〕实现直线,椭圆,矩形绘制:a>{'1':g.drawLine<x0, y0, e.getX<>, e.getY<>>;'2':g.drawOval<x0, y0, e.getX<> - x0, e.getY<> - y0>;'3':g.drawRect<x0, y0, e.getX<> - x0, e.getY<> - y0>;}〔3〕随笔划和橡皮a>{'4':g.drawLine<x0, y0, e.getX<>, e.getY<>>;x0 = e.getX<>;y0 = e.getY<>;'5':g.clearRect<x0 - 10, y0 - 10, 20, 20>;x0 = e.getX<>;y0 = e.getY<>;break ;}6.主类程序得以运行的入口,进入主类后即运行litao 〔〕类.C.调试运行调试运行后得到了画板和预期的所有功能,实现结果展示:D.遇到问题1.绘制完成后,将窗口最大化或者最小化后再打开,原本绘制的图形消失.尚未解决.2.确定画笔大小时不得要领,后来通过查找资料解决.附表1:源程序:import java.awt.*;import java.awt.event.*;import javax.swing.JFrame;public class litao extends JFrame implements MouseMotionListener,MouseListener,ActionListener, ItemListener {Panel canvas2 = new Panel<>;Button btn1 = new Button<"直线">;Button btn2 = new Button<"椭圆">;Button btn3 = new Button<"矩形">;Button btn4 = new Button<"去除">;Button btn5 = new Button<"画笔">;Button btn6 = new Button<"橡皮">;Choice choice = new Choice<>;Choice choice1 = new Choice<>;Color b;int x0,y0;char a='4';int con=1;BasicStroke size;private static Color[] colors = { Color.black, Color.blue, Color.red,Color.yellow, Color.green };public litao<>{choice1.add<"1">;choice1.add<"3">;choice1.add<"5">;choice1.add<"7">;choice1.add<"9">;choice.add<"黑色">;choice.add<"蓝色">;choice.add<"红色">;choice.add<"黄色">;choice.add<绿"色">;canvas2.add<choice>;canvas2.add<choice1>;canvas2.add<btn1>;canvas2.add<btn2>;canvas2.add<btn3>;canvas2.add<btn4>;canvas2.add<btn5>;canvas2.add<btn6>;choice.addItemListener<this>; choice1.addItemListener<this>;btn1.addActionListener<this>;btn2.addActionListener<this>;btn3.addActionListener<this>;btn4.addActionListener<this>;btn5.addActionListener<this>;btn6.addActionListener<this>; addMouseListener<this>; addMouseMotionListener<this>;add<canvas2,BorderLayout.NORTH>; setBackground<Color.white>;canvas2.setBackground<Color.blue>; this.setBackground<Color.white>; setSize<800, 600>;setVisible<true>;}public void paint<Graphics g>{}public void actionPerformed<ActionEvent e> { if<e.getSource<>.equals<btn1>>{a='1';}if<e.getSource<>.equals<btn2>>{a='2';}if<e.getSource<>.equals<btn3>>{a='3';}if<e.getSource<>.equals<btn4>>{Graphics g = this.getGraphics<>;g.clearRect<0, 0, this.getWidth<>, this.getHeight<>>;}if<e.getSource<>.equals<btn5>>{a='4';}if<e.getSource<>.equals<btn6>>{a='5';}}public void mousePressed<MouseEvent e>{x0=e.getX<>;y0=e.getY<>;}public void mouseMoved<MouseEvent e>{}public void mouseReleased<MouseEvent e>{Graphics2D g = <Graphics2D>this.getGraphics<>;size=newBasicStroke<con,BasicStroke.CAP_BUTT,BasicStroke. JOIN_BEVEL>;g.setColor<b>;g.setStroke<size>;switch<a>{case '1':g.drawLine<x0, y0, e.getX<>, e.getY<>>;break;case '2':g.drawOval<x0, y0, e.getX<> - x0, e.getY<> - y0>;break;case '3':g.drawRect<x0, y0, e.getX<> - x0, e.getY<> - y0>;break;}}public void mouseEntered<MouseEvent e>{}public void mouseExited<MouseEvent e>{}public void mouseClicked<MouseEvent e>{}public void mouseDragged<MouseEvent e> { Graphics2D g = <Graphics2D>this.getGraphics<>;size=newBasicStroke<con,BasicStroke.CAP_BUTT,BasicStroke. JOIN_BEVEL>;g.setColor<b>;g.setStroke<size>;switch<a>{case '4':g.drawLine<x0, y0, e.getX<>, e.getY<>>;x0 = e.getX<>;y0 = e.getY<>;break;case '5':g.clearRect<x0 - 10, y0 - 10, 20, 20>;x0 = e.getX<>;y0 = e.getY<>;break;}}public void itemStateChanged<ItemEvent e> { if<e.getSource<>==choice>{if<choice.getSelectedIndex<>==0>b=Color.black;if<choice.getSelectedIndex<>==1>b=Color.BLUE;if<choice.getSelectedIndex<>==2>b=Color.red;if<choice.getSelectedIndex<>==3>b=Color.yellow;if<choice.getSelectedIndex<>==4>b=Color.green;}if<e.getSource<>==choice1>{if<choice1.getSelectedItem<>=="1">{con=1;}else if<choice1.getSelectedItem<>=="3"> {con=3;}else if<choice1.getSelectedItem<>=="5"> {con=5;}else if<choice1.getSelectedItem<>=="7"> {con=7;}else if<choice1.getSelectedItem<>=="9">{con=9;}}}public static void main<String[] args> { new litao<>;}}。

画图程序设计报告(MFC)

画图程序设计报告(MFC)

Windows程序设计课程设计报告班级:计本08-1班姓名:X X学号:XXXXXXXXX指导老师:2010-11-29目录1 引言 (3)1.1 课题背景 (3)1.2 课程设计目的 (3)2 功能说明 (3)3 系统的实现 (4)3.1 视图设计 (4)3.2 编辑资源 (4)3.3 编程思路及各个函数的实现 (5)4程序功能的测试 (7)4.1测试的研究与选择 (7)4.2 测试环境 (7)5.3 实例测试结果 (7)5学习的总结 (9)6参考文献 (10)摘要:本课程设计实现的是画椭圆、矩形、直线和随手画功能等。

这个画图小程序实现了简单的画图功能,具有简洁大方的图文外观。

它的设计按软件工程的方法进行,系统具有良好的界面、必要的交互信息和简易的菜单进行操作。

即时准确地获得需要的画图的工具,适合休闲娱乐和简单的画画,对人们的生活有一定的帮助。

在课程设计中,系统开发平台为WindowsXP,程序设计设计语言采用Visual C++,在程序设计中,采用了结构化与面向对象两种解决问题的方法。

关键词:程序设计;画图;MFC;画图函数Ellipse()Restangle()1 引言1.1 课题背景本课程设计主要在生活中的娱乐,可以在本程序上进行简单的绘图娱乐。

画图是日常生活中有效的工具,能实现简单的画图。

本程序是在VC6.0中使用AppWizard创建基于对话框的应用程序。

1.2 课程设计目的画图的实现,通过C++语句实现。

在视图中实现画线功能,更好的了解MFC、C++等面向对象语言的设计和实现,运用自己所学的一些知识来实现其运用到现实的实践中,从而做到学而有用。

2 功能说明本程序可以实现的功能如下:1.运行程序后单击“编辑”菜单,选择“画矩形”后,用鼠标就可以在视图中画出一个矩形。

2.选择“画椭圆”,用鼠标就可以在视图中画出一个椭圆。

3.选择“画直线”,用鼠标就可以在视图中画出一条直线。

4.选择“随手画”,用鼠标就可以在试图中随手画画。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

画图板
学生姓名曾思哲
院系名称信息工程学院
专业名称计算机科学与技术班级计算机1班
学号
指导教师谢红标
完成时间2014年6月4日
项目可行性报告
1引言
《画图板软件开发和设计》
该画图板在图形界面下可以画椭圆,正圆,矩形,正方形,填充颜色,添加字符等基本功能。

1.2课程设计的目的
巩固和加深以Java 语言为基础的面向对象编程技术理论知识的理解,提高实际动手编程能力的培养,掌握以Java为核心的应用软件开发方案,达到能独立阅读、编制和调试一定规模的Java程序的水平, 程序通过调用JAVA提供的基本类进行了简单的界面设计,运用了JAVA中类的继承特性实现了对父类方法的调用,并多次使用CASE语句实现绘图菜单的选择,运用了适配器类简化了监听器类的重写工作。

1.3本选题的设计背景
在现实生活中,我们会经常遇到些需要绘制简单图形的问题,但是网络上大多数的绘图工具都比较复杂,所以我们需要一些简单实用的绘图小工具,以便对工作带来最大的满足与需求,于是我就设计了一个简单。

相关文档
最新文档