java画图板课程设计.docx

上传人:b****3 文档编号:2792981 上传时间:2022-11-15 格式:DOCX 页数:36 大小:165.28KB
下载 相关 举报
java画图板课程设计.docx_第1页
第1页 / 共36页
java画图板课程设计.docx_第2页
第2页 / 共36页
java画图板课程设计.docx_第3页
第3页 / 共36页
java画图板课程设计.docx_第4页
第4页 / 共36页
java画图板课程设计.docx_第5页
第5页 / 共36页
点击查看更多>>
下载资源
资源描述

java画图板课程设计.docx

《java画图板课程设计.docx》由会员分享,可在线阅读,更多相关《java画图板课程设计.docx(36页珍藏版)》请在冰豆网上搜索。

java画图板课程设计.docx

java画图板课程设计

计算机与信息工程系

《JAVA程序设计》课程设计

 

画图板

 

专业

计算机

班级

计000001

学号

00000

姓名

0000

E-Mail

电话

10000000032

时间

2000006

 

承德石油高等专科学校

 

摘要:

本程序通过调用JAVA提供的BorderLayout,Button,Color;Container;Graphics;Panel;ButtonGroup;JFrame;JPanel;UIManager等基本类进行了简单的界面设计,运用了JAVA中类的继承特性实现了对父类方法的调用,并多次使用CASE语句实现绘图菜单的选择,运用了适配器类简化了监听器类的重写工作。

关键字:

UIManager、ActionListener

1.课程设计介绍

本程序完成的是一个类似于Windows画图板的绘图程序。

由于不是开发和设计专业的绘图和图像制作软件,所以,完成的程序的简单功能包括以下几项:

1.新建一个空白图形文件:

用于绘制新的图形。

2.打开或保存一个图形文件,便于对图形文件的管理。

3.绘制一些基本的画图组件:

直线、矩形、实心矩形、椭圆、实心椭圆、圆、实心圆、圆角矩形、实心圆角矩形等。

4.可以用鼠标在绘图面板上单击拖动进行随笔画。

5.橡皮擦:

可以将已绘制好的图形擦掉。

6.添加文字:

可以在绘图区域内添加文字。

7.选择文字的字体:

通过一个下拉式的选择条,可以选中所需要的字体。

本程序中包括:

宋体、隶书、华文彩云、仿宋、华文行楷、方正舒体、TimesNewRoman、Serif、Monospaced、SonsSerif、Garamond。

当然,在下面的的程序分析中可以看到,由于我们灵活设置了字体数组,是的可以随意添加系统支持的任何字体。

大大方便和简化了程序设计。

8.选择文字的字体风格:

通过两个复选框按钮,可以选择需要的字体风格,包括:

粗体、斜体,使用者有三种选择方式,包括:

①同时选中两者、②只选择其中一种、③两者都不选中。

9.设置画笔的颜色:

可以选择当前绘制图形的画笔颜色,让图形更加丰富多彩、生动活泼。

10.设置画笔的粗细:

该选项在作用于基本图形组件和文字时,它的效果是不一样的。

①当作用于绘制图形组件时,它的作用是改变画笔绘制线条的粗细;②当作用于文字时,它的作用是改变文字的大小。

2.系统设计

2.1需求分析

用过微软Windows操作系统的人一定都对Windows自带的画图板非常的熟悉。

同图像处理软件界的“大哥大”Photoshop比起来,它虽然不及Photoshop的功能强大、内容丰富,但是作为Windows一直以来都内带的附件程序,它具有小巧玲珑、简单实用等其它绘图软件所不具备的优点。

同时它的风格也被许多其它绘图软件所效仿。

2.2总体设计

本程序主体为一个文件:

QingDrawPad.java。

其中包括的程序段有:

1QingDrawPad():

构造函数,用以初始化。

2chooseColor():

选择当前绘图颜色程序段。

3setStroke():

设置当前画笔粗细程序段。

4loadFile():

调用图形文件程序段。

5newFile():

新建一个图形文件程序段。

6saveFile():

保存当前所绘制图形程序段。

7creatNewItem():

新建一个基本图形单元程序段。

相应的内部类有:

1ButtonHandler:

用来处理基本图形单元的按钮事件。

2ButtonHandler1:

用来处理New、Open、Save三个操作按钮的按钮事件。

3DrawPanel:

用来创建绘图区域的子类。

4MouseA:

继承了MouseAdapter,用来完成鼠标相应事件的操作,如单击、松开、进入和离开等。

5MouseB:

继承了MouseMotionAdapter,用来完成鼠标拖动和鼠标移动的相应事件操作。

此外,还继承了父类drawings的基本图形子类,如前所述,这里不再重复。

2.3系统功能设计

画板主要由以下几个部分组成:

1.主窗体的设计。

主类(QingDrawPad)用来生成主界面,完成画图板的主要框架。

主类由JFrame派生出来。

主界面由菜单栏、工具栏和画图区域三部分组成,布局格式采用BorderLayout布局形式。

2.菜单栏和工具栏的设计。

菜单栏包括文件菜单栏、颜色菜单栏、线条粗细菜单栏和提示菜单栏。

其中①文件菜单栏包括文件的新建、打开、保存等选项;②颜色菜单栏可以进行颜色选择;③线条粗细菜单栏设置线条的粗细;④提示菜单栏给出提示信息。

工具栏由新建、打开和保存文件按钮、基本图形的按钮、选择字体风格复选框和字体下拉列表框组成。

在主类中添加并对菜单栏和工具栏添加事件监听。

3.事件响应的处理。

对菜单栏、工具栏和用鼠标画图的事件响应进行处理。

1菜单栏中文件的新建、打开和保存菜单事件的处理:

Java把每个文件都视作顺序字节流。

如果要在Java中进行文件处理,则必须用到Java.io包。

这个包定义了一些流类,选用FileInputStream(从文件中读入数据)和FIleOutputStream(向文件输出数据),通过建立这些文件的对象便可以打开文件。

这些流相应地从InputStream和OutputStream派生,这些文件均使用文件流,所以必须将文件结构化以适应程序的要求。

我们需要对保存的对象序列化,然后以输出流的方式保存。

在程序中用newFile()、loadFile()和saveFile()三个函数分别实现文件的新建、打开和保存。

2工具栏事件的处理:

主要有一些Button组成。

我们用ButtonHandler内部类处理基本单元事件,ButtonHandler1内部类处理新建、打开和保存文件按钮,在画图类DrawPanel中定义CreateNewItem()函数处理工具栏中的画图事件。

3鼠标画图:

由于画图板主要是用来画图,所以需要在程序中添加对鼠标按下、拖动、进入、退出、移动和单机事件进行监听并进行处理。

内部类mouseA定义了完成鼠标按下、松开、进入、退出事件响应。

内部类mouseB完成鼠标拖动和移动事件响应。

4.画图的基本功能。

在程序设计中用到了动态绑定,我们可以提取他们的公共属性,先建立一个父类,然后建立各个子类,继承父类中的方法并将父类中的draw函数重写。

一些关于图形形状的类,最主要是用于画图、字体和橡皮擦等基本类型。

如Circle、Triangle、Rectangle,它们都是有超类(Object类)派生的。

在面向对象编程中,每个类都有画出自己的能力,每个类都有自己的draw函数,但每种形状的draw函数都不一样,但在绘制任何形状时,只需简单调用父类drawing的draw方法,然后让程序动态地根据对象的类型决定使用哪个子类的draw方法。

为了使画出的图形更加美观,我们在draw函数中使用了Graphics2D的对象的引用。

这样可以在不改变原程序的情况下,添加扩展的图形,是程序变得更加强大。

同时,为了文件的保存,父类实现Serialize接口,将对象线性化。

3.系统各功能模块设计

3.1界面设计

我们可以看到,整个程序界面很简洁,而且界面操作、提示内容全部是中文,一目了然。

在左上方的菜单栏里有文件、颜色、线条粗细、帮助4个下拉式菜单,可以对绘图文件进行相应的操作。

下面一排是工具栏的工具按钮,从左到右依次为:

新建文件、打开文件、保存文件、随笔画、直线、空心矩形、实心矩形、空心椭圆、空心圆、实心圆、空心圆角矩形、实心圆角矩形、橡皮擦、颜色选择按钮、线条粗细设置按钮、文字添加按钮、粗体字体选择框、斜体字体选择框、字体选择下拉式选择框。

整个工具栏是可以拖动的,可以将它拖动到程序窗口的任意位置。

工具栏下面的整个白色区域就是绘图区域,即绘图面板,它的大小可以随着窗口的大小自动调整。

在窗口的最底部是程序设计作者标注,以及鼠标状态提示条,可以显示当前的鼠标状态,包括进出窗口、移动、单击、松开等。

具体效果如下列图所示:

3.2功能实现

(一):

程序基本组成框架和结构

1.一组基本图形按钮,包括:

Pencil(随笔画)、Line(直线)、Rect(矩形)、FRect(实心矩形)、Oval(椭圆)、FOval(实心椭圆)、Circle(圆)、FCircle(实心圆)、RoundRect(圆角矩形)、FrRect(实心圆角矩形)、Rubber(橡皮擦)、Word(文字)。

这些基本图形都继承于同一个父类:

drawings。

drawings具有变量(属性):

intx1,x2,y1,y2;//用来存放相应图形元素的坐标

intR,G,B;//用来存放图形色彩颜色信息

floatstroke;//用来存放画笔粗细

inttype;//用来保存图形类型

Strings1;//用来保存输入文字字符串

Strings2;//用来保存字体类型字符串

voiddraw(Graphics2Dg2d){};

draw()方法中用到了Java绘图里面的Graphics2D类,所有继承drawings类的图形子类都重写了此方法。

这就是Java程序中类的继承的概念。

它对于程序代码的重用是很重要的,将极大的方便和简略程序代码。

2.此外,程序中还包括一下三个基本操作按钮:

1新建(New):

新建一个图形文件。

2打开(Open):

打开一个图形文件。

3保存(Save):

保存当前图形文件。

3.选择颜色和设置当前画笔粗细的按钮分别为:

颜色(Color)、线条粗细(Stroke)。

4.选择当前字体风格的选择框为:

粗体(BOLD)、斜体(ITALIC),用以设置当前字体的风格。

5.选择当前字体的下拉式复选框为:

Styles。

6.菜单条及其组成:

1文件(File)菜单项,包括:

New(新建一个图形文件)、Load(打开一个图形文件)、Save(保存当前图形文件)、Exit(退出程序)。

2颜色(Color)菜单项:

用来设置当前颜色。

3线条粗细(Stroke)菜单项:

用来设置当前画笔粗细。

4帮助(Help)菜单项:

有关的程序帮助提示。

(二):

画图板相关操作

1.新建一个图形文件

单击工具栏上的图标

,或选择File→New菜单,则清除当前所绘制的图像,回到初始画面。

2.打开已有的文件

单击工具栏上的图标

,或选择File→Load菜单,则清除当前所绘制的图像,并弹出打开文件对话框要求选择要打开的文件。

如下图:

3.保存

单击工具栏上的图标

,或选择File→Save菜单,则弹出要求保存文件对话框。

如下图:

4.绘制基本图形

基本图形包括以下几种:

Pencil:

随笔画,图标为:

Line:

直线,图标为:

Rect:

矩形,图标为:

FRect:

实心矩形,图标为:

Oval:

椭圆,图标为:

FOval:

实心椭圆,图标为:

Circle:

圆,图标为:

FCircle:

实心圆,图标为:

RoundRect:

圆角矩形,图标为:

FrRect:

实心圆角矩形,图标为:

Rubber:

橡皮擦,图标为:

绘图时,单击工具栏上相应图形的图标,然后用鼠标拖动,在绘图区域内进行绘图即可。

5.设置画笔大小

单击工具栏上的图标

,或单击Stroke→SetStroke菜单,则弹出相应的设置当前画笔粗细对话框。

如下图:

6.选择颜色

单击工具栏区域

,或单击Color→ChooseColor菜单,则弹出相应的选择当前画图颜色对话框。

如下图:

7.选择字体风格

在工具

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 经管营销 > 经济市场

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1