Java_菜单按钮控制绘图程序

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

目录

一、程序开发背景 (1)

二、程序分析与设计 (1)

(一)程序功能要求 (1)

(二)程序模块结构设计 (1)

1、程序流程 (1)

2、模块化功能结构分析 (2)

三、程序的设计与实现 (3)

(一)图形界面 (3)

(二)图形界面的实现 (3)

四、系统测试 (4)

五、总结 (10)

六、附件(程序代码) (11)

菜单按钮控制绘图程序

一、程序开发背景

进一步巩固Java 课程中关于图形用户界面具体实现的知识,使用Eclipse 开发平台来实现“菜单按钮控制绘图”课题。

二、程序分析与设计

为了复习和巩固Java 程序设计基础,和进一步理解和掌握Java 语言,学生要用Java 语言设计一个完整的应用程序,使学生综合应用所学知识完成软件的分析、设计、调试和总结,可加深和巩固对理论教学和实验教学内容的掌握,使学生进一步掌握使用面向对象技术开发完整系统的方法。

(一)程序功能要求

功能要求:实现简单绘图功能,具体要求:画直线,画空心或实心椭圆、画空心或实心矩形、画多边形(图形的位置和大小可在程序中设定)。(二)程序模块结构设计

1、程序流程

用菜单和按钮控制绘图流程如图一所示

图一 菜单和按钮控制绘图流程图

绘制图形:

(1)直线

(2)空心椭圆

(3)实心椭圆

(4)空心矩形

(5)实心矩形

(6)多边形

2、模块化功能结构分析

设计程序功能模块如图二所示

用菜单和按钮控制绘图程序

图二 功能模块图 菜单绘制图形要求:

主菜单:直线、

绘 制 钮 绘

椭圆、矩形、多边形菜单项:

(1)直线:直线

(2)椭圆:实心椭圆、空心椭圆

(3)矩形:实心矩形、空心矩形

(4)多边形:多边形

按钮项:直线、空心椭圆、实心椭圆、空心矩形,实心矩形、多边形

三、程序的设计与实现

一)图形界面

图形界面用于显示绘制的图形,界面主要包括4 个上标签、6 个下标签和图形显示区域,其中上标签“椭圆”包含“实心椭圆” 、“空心椭圆”两个子标签,“矩形”中又包含“实心矩形” ,“空心矩形” 两个子按钮。

(二)图形界面的实现

图形界面的具体实现

import java.awt.*;

import java.awt.event.*;

import javax.swing.*;

以上代码用于导入以下程序所用到的包。

模块主体体代码:

public class Draw extends JFrame implements ActionListener {

}

四、系统测试

程序运行结果

1、菜单控制下绘制“直线”如图三:

图三绘制“直线”图2、菜单控制下绘制“空心椭圆”如图四:

图四绘制“空心椭圆”图

3、菜单控制下绘制“实心椭圆”如图五:

图五绘制“实心椭圆”图

4、菜单控制下绘制“空心矩形”如图六:

图六绘制“空心矩形”图5、菜单控制下绘制“实心矩形”如图七:

图七绘制“实心矩形”图

6、菜单控制下绘制“多边形”如图八:

图八绘制“多边形”图7、按钮控制下绘制“直线”如图九:

图九绘制“直线”图

8、按钮控制下绘制“空心椭圆”如图十:

图十绘制“空心椭圆”图9、按钮控制下绘制“实心椭圆”如图十一:

图十一绘制“实心椭圆”图

10、按钮控制下绘制“空心矩形”如图十二:

图十二绘制“空心矩形”图11、按钮控制下绘制“实心矩形”如图十三:

图十三绘制“实心矩形”图

12、按钮控制下绘制“多边形”如图十四:

图十四绘制“多边形”图

五、总结

本次Java 课程设计我做的课题是菜单按钮绘制图形,实验过程中,将程序实现的功能分为两个模块,一是用菜单绘制图形,二是用按钮绘制图形,然后对这两个模块分别完成,在此过程中使我加深了对Java 的理解,大致掌握Java 语言的编辑,编译,调试程序,并将算法转变为程序实现。

在做此次实验后,我初步理解并能够操作和使用Java的if 语句,Java 的类、对象和方法,声明、定义和调用方法,理解实参和形参的含义。学习创建简单类型的数组,并能用循环语句处理数组。使用统一建模语言(UML)设计类,并实现类。正确理解并能够熟练操作和使用Java 类的继承关系,。综合运用接口,类的知识。理解线程的

基本概念。

所以我觉得,学习java 要不断地通过上机来增强自己对知识的学习与认识。书本要学有所用,才是真正的融会贯通。最重要的,在实验中,我们会遇到种种的难题,或由于粗心,或由于知识的匮乏,或其他,但我们不能有畏难情绪。一遇到困难就放弃,我们永远都不能成就自己。学会自己查阅资料,学会寻求他人的帮助,一时的不会更能加深我们的记忆,促进我们的求知欲。所以不能放弃自己。

六、附件(程序代码)

附录:

import java.awt.*;

import java.awt.event.*;

import javax.swing.*;

public class Draw extends JFrame implements ActionListener {

private JPanel jpanel;

private HuaCanvas canvas; // 自定义画布组件int flag=0;

public Draw()

{

super(" 绘制图形");

Dimension dim = getToolkit().getScreenSize(); this.setBounds(dim.width/3 ,

dim.height/4, dim.width/4 , dim.height/2);

// 设置显示窗口位置和大小

this.setDefaultCloseOperation(EXIT_ON_CLOSE);

this.jpanel=new JPanel(new GridLayout(2,4,32,13));

// 设置为 2 行 4 列的GridLayout 布局

canvas=new HuaCanvas();

this.getContentPane().add(jpanel,"South"); // this.getContentPane().add(canvas); //

this.addmyJButon(); //

this.addmyMenu(); //

this.setVisible(true);

}

public void addmyMenu()

添加jpanel

添加canvas 调用自定义方法,添加按钮调用自定义方法,添加菜单

相关文档
最新文档