Java实现简单的绘图软件

Java实现简单的绘图软件
Java实现简单的绘图软件

项目效果图:

项目源代码:

import java.awt.*;

import java.awt.event.*;

import java.awt.geom.Ellipse2D;

import java.awt.geom.Line2D;

import java.awt.geom.Rectangle2D;

import java.awt.image.BufferedImage;

import java.io.File;

import java.io.IOException;

import javax.imageio.ImageIO;

import javax.swing.*;

import javax.swing.filechooser.FileNameExtensionFilter;

/* author: 蒋冰*/

public class ImageDraw {

private int typeFlag = 1;

private int endFlag = 1;

private int strokeTemp = 1;

private Color color = Color.black;

private BasicStroke stroke = new BasicStroke();

private float pre_x = 0;

private float pre_y = 0;

private float start_x = 0;

private float start_y = 0;

private float start_X = 0;

private float start_Y = 0;

private float end_x = 0;

private float end_y = 0;

private float width = 0;

private float height = 0;

private final int AREA_WIDTH = 700;

private final int AREA_HEIGHT = 400;

private Line2D.Float line;

private Rectangle2D.Float rect;

private Ellipse2D.Float ellipse;

private File imageFile;

BufferedImage image = new BufferedImage(AREA_WIDTH , AREA_HEIGHT , BufferedImage.TYPE_INT_RGB);

Graphics2D g2 = (Graphics2D) image.getGraphics();

private JFrame frame = new JFrame("简单手绘程序");

private DrawPanel drawArea = new DrawPanel();

JButton buttonShowColor = new JButton("");

public void init(){

g2.fillRect(0 , 0 ,AREA_WIDTH , AREA_HEIGHT);

g2.setColor(Color.black);

drawArea.setPreferredSize(new Dimension(AREA_WIDTH , AREA_HEIGHT));

drawArea.addMouseMotionListener(new MouseMotionAdapter()

{

public void mouseDragged(MouseEvent e)

{

do_mouseDragged(e);

}

});

drawArea.addMouseListener(new MouseAdapter()

{

public void mousePressed(MouseEvent e1){

do_mousePressed(e1);

}

public void mouseReleased(MouseEvent e)

{

g2.setColor(color);

g2.setStroke(stroke);

endFlag = typeFlag;

drawArea.repaint();

}

public void mouseEntered(MouseEvent e){

frame.setCursor(new Cursor(Cursor.CROSSHAIR_CURSOR));

}

public void mouseExited(MouseEvent e){

frame.setCursor(null);

}

});

frame.add(drawArea);

JMenuBar mb = new JMenuBar();

JMenu menuFile = new JMenu("文件");

JMenuItem menuItemSave = new JMenuItem("保存"); menuItemSave.addActionListener(new ActionListener(){

public void actionPerformed(ActionEvent arg0) {

do_save_actionPerformed(arg0);

}

});

JMenuItem menuItemOpen = new JMenuItem("打开"); menuItemOpen.addActionListener(new ActionListener(){

public void actionPerformed(ActionEvent arg0) {

try {

do_open_actionPerformed(arg0);

} catch (IOException e) {

// TODO 自动生成的catch 块

e.printStackTrace();

}

}

});

JMenuItem menuItemExit = new JMenuItem("退出"); menuItemExit.addActionListener(new ActionListener(){

public void actionPerformed(ActionEvent arg0) {

System.exit(0);

}

});

menuFile.add(menuItemSave);

menuFile.add(menuItemOpen);

menuFile.add(menuItemExit);

mb.add(menuFile);

JPanel buttonPanel = new JPanel();

FlowLayout layout = new FlowLayout(FlowLayout.CENTER, 20, 20); buttonPanel.setLayout(layout);

buttonPanel.setBackground(Color.gray);

JButton buttonDraw = new JButton("绘图");

buttonDraw.addActionListener(new ActionListener(){

public void actionPerformed(ActionEvent arg0) {

typeFlag = 1;

}

});

buttonPanel.add(buttonDraw);

JButton buttonLine = new JButton("直线");

buttonLine.addActionListener(new ActionListener(){

public void actionPerformed(ActionEvent arg0) {

typeFlag = 2;

}

});

buttonPanel.add(buttonLine);

JButton buttonRect = new JButton("矩形");

buttonRect.addActionListener(new ActionListener(){

public void actionPerformed(ActionEvent arg0) {

typeFlag = 3;

}

});

buttonPanel.add(buttonRect);

JButton buttonEllipse = new JButton("椭圆");

buttonEllipse.addActionListener(new ActionListener(){

public void actionPerformed(ActionEvent arg0) {

typeFlag = 4;

}

});

buttonPanel.add(buttonEllipse);

JButton buttonDrop = new JButton("清除");

buttonDrop.addActionListener(new ActionListener(){

public void actionPerformed(ActionEvent arg0) {

typeFlag = 5;

g2.setColor(Color.white);

g2.fillRect(0 , 0 ,AREA_WIDTH , AREA_HEIGHT);

drawArea.repaint();

}

});

buttonPanel.add(buttonDrop);

JButton buttonColorChoose = new JButton("选择颜色"); buttonColorChoose.addActionListener(new ActionListener(){ public void actionPerformed(ActionEvent arg0) {

do_buttonColorChoose_actionPerformed(arg0);

}

});

buttonPanel.add(buttonColorChoose);

buttonShowColor = new JButton("");

buttonPanel.add(buttonShowColor);

JLabel label = new JLabel("边框:");

buttonPanel.add(label);

JComboBox combox = new JComboBox();

for(int i=1; i<=36; i++){

combox.addItem(i);

}

combox.addItemListener(new ItemListener() {

public void itemStateChanged(ItemEvent e) {

strokeTemp = Integer.parseInt(e.getItem().toString()) ;

stroke = new BasicStroke(strokeTemp);

}

});

buttonPanel.add(combox);

frame.add(buttonPanel,BorderLayout.SOUTH);

frame.add(mb,BorderLayout.NORTH);

frame.setBackground(Color.gray);

frame.pack();

frame.setVisible(true);

}

public static void main(String[] args)

{

new ImageDraw().init();

}

class DrawPanel extends JPanel

{

public void paint(Graphics g)

{

Graphics2D g2 = (Graphics2D) g;

g2.clearRect(0, 0, AREA_WIDTH, AREA_HEIGHT);

g2.setColor(color);

g2.setStroke(stroke);

g2.drawImage(image , 0 , 0 , null);

if(typeFlag == 2){

line = new Line2D.Float(start_x, start_y, end_x, end_y);

g2.draw(line);

}

if(typeFlag == 3){

rect = new Rectangle2D.Float(start_X, start_Y, width, height);

g2.draw(rect);

}

if(typeFlag == 4){

ellipse = new Ellipse2D.Float(start_X, start_Y, width, height);

g2.draw(ellipse);

}

if(typeFlag == 5){

g2.setColor(Color.white);

g2.fillRect(0 , 0 ,AREA_WIDTH , AREA_HEIGHT);

}

}

}

private void do_save_actionPerformed(ActionEvent arg0) {

// TODO 自动生成的方法存根

JFileChooser chooser = new JFileChooser();

chooser.setSelectedFile(new File(imageFile.getName()));

int option = chooser.showSaveDialog(null);

if(option == JFileChooser.APPROVE_OPTION){

File file = chooser.getSelectedFile();

try {

ImageIO.write(image, "jpg", file);

} catch (IOException e) {

// TODO 自动生成的catch 块

e.printStackTrace();

}

}

}

private void do_open_actionPerformed(ActionEvent arg0) throws IOException { // TODO 自动生成的方法存根

JFileChooser chooser = new JFileChooser();

chooser.setFileFilter(new FileNameExtensionFilter("图片文件","jpg","jpeg","jif"));

chooser.setFileSelectionMode(JFileChooser.FILES_ONLY);

int option = chooser.showOpenDialog(null);

if(option == JFileChooser.APPROVE_OPTION){

imageFile = chooser.getSelectedFile();

Image sourceImage = ImageIO.read(imageFile);

g2.drawImage(sourceImage, 0, 0, sourceImage.getWidth(null), sourceImage.getHeight(null), null);

drawArea.repaint();

}

}

private void do_buttonColorChoose_actionPerformed(ActionEvent arg0) {

// TODO 自动生成的方法存根

JColorChooser chooser = new JColorChooser();

color = chooser.showDialog(null, "请选取颜色", Color.black);

buttonShowColor.setBackground(color);

}

private void do_mouseDragged(MouseEvent e) {

end_x = e.getX();

end_y = e.getY();

width = Math.abs( end_x - start_x );

height = Math.abs( end_y - start_y );

if(end_x <= start_x && end_y <= start_y){

start_X = start_x - width;

start_Y = start_y - height;

}

if(end_x > start_x && end_y < start_y){

start_Y = start_y - height;

start_X = start_x;

}

if(end_x <= start_x && end_y >= start_y){

start_Y = start_y;

start_X = start_x - width;

}

if(end_x >= start_x && end_y >=start_y){

start_Y = start_y;

start_X = start_x;

}

if(typeFlag == 1){

if (pre_x > 0 && pre_y > 0)

{

line = new Line2D.Float(pre_x, pre_y, end_x, end_y);

g2.setColor(color);

g2.setStroke(stroke);

g2.draw(line);

}

pre_x = e.getX();

pre_y = e.getY();

drawArea.repaint();

}else{

drawArea.repaint();

}

}

private void do_mousePressed(MouseEvent e1) {

// TODO 自动生成的方法存根

width = 0;

height = 0;

start_x = end_x = pre_x = e1.getX();

start_y = end_y = pre_y = e1.getY();

if(endFlag == 2){

g2.draw(line);

}

if(endFlag == 3){

g2.draw(rect);

}

if(endFlag == 4)

{

g2.draw(ellipse);

}

drawArea.repaint();

}

}

信息技术教案——画图

信息技术教案——画图 第一课美妙的“画图”世界 一、教学目的 1、掌握启动“画图”程序的方法 2、初步认识“画图”的功能与窗口的名称 二、教学重难点 1、“画图”程序的启动与退出 2、认识“画图”程序窗口的组成和画图工具 三、教学地点:教室 四、教学过程 引言:看书上这些美丽的图画,都是同学们使用Windows操作系统提供的画图工具完成的。使用计算机画图,既节约了纸和笔,又省去了调配颜料的麻烦,而且绘画方法很简捷,功能强大。相信经过学习,同学们都会成为出色的“电脑小画家”。 (一)启动“画图” 步骤: “开始”→“程序”→“附件”→“画图” 如果我们经常使用画图程序,也可以将它设为快捷方式,放在桌面上。 (二)认识“画图”窗口 1、标题栏:用来显示当前所画图画的文件名。 2、菜单栏:提供了对“画图”程序进行各种操作的命令,单击某一项都会拉出相关操作的下拉菜单。 3、画板:可以画画的区域,相当于平时画画的画纸。 4、工具箱:包含了画图时所用到的16种工具。 5、状态栏:提供了当前画画时所选工具的作用。分为三部分: ①提示信息栏:提示当前工作状态的信息说明。 ②绝对坐标:指出鼠标在画板中的坐标位置。 ③相对坐标:提示鼠标当前位置距前一个绘图点的坐标方向的距离。 注意:1、如果窗口较小,可以最大化窗口。 2、如果画板较小,可以选择“图像”菜单中的“属性”选项,在弹出的对话框中宽度和高度的值改为720和450;或者把鼠标指针移到画板右下角处,用拖拉鼠标的方法将画板拉至满意的位置为止。 (三)选择画图的工具 在程序的工具箱中提供画画的工具有16种,默认的工具是铅笔工具。如果想选择哪一个工具就用鼠标单击这一项即可。被选中的工具的按钮被按下去,呈现出“凹下”状态,同时,鼠标指针也变成工具符号。工具箱的下边也会出现所对应的工具状态框,给出当前所选工具的几种状态。 提示:在“画图”程序中如果没有工具箱时,可以从“查看”菜单中选“工具箱”选项,如果“工具箱”没有在窗口左侧,可以双击“工具箱”标题处,此项内容就会回到窗口左侧,或者用拖动的方法将“工具箱”拖动到任意的位置。 (四)退出“画图”窗口 步骤: 1、“文件”→“退出”

JAVA实现计算器课程设计

JAVA实现计算器课程设计 计算机科学系 计应0701班 指导老师:刘其昌 设计人员:陈秀桃 设计日期:2009年11月10日——2009年12月20日 计算器的设计 目录 第一章绪 论 ..................................................................... .. (2)

1.1 开发环 境 ..................................................................... . (2) 1.2 基本功能介 绍 ..................................................................... ......... 2 第二章系统设 计 ..................................................................... (3) 2.1 系统流程 图 ..................................................................... . (3) 2.2 系统功能框 图 ..................................................................... (3) 2.3 需求分 析 ..................................................................... ................ 4 第三章软件设 计 ..................................................................... (5) 3.1 界面设 计 ..................................................................... . (5) 3.2 代码设 计 .....................................................................

JAVA-画图工具全解

摘要 随着科学技术的不断提高,计算机科学日渐成熟,其强大的功能已为人们深刻认识,它已进入人类社会的各个领域并发挥着越来越重要的作用。 JAVA是一门很优秀的编程语言,具有面向对象、与平台无关、安全、稳定和多线程等特点,是目前软件设计中极为健壮的编程语言。JAVA不仅可以用来开发大型的应用程序。而且特别适合Internet的应用开发。JAVA确实具备“一次写成,处处运行”的特点,JAVA以成为网络时代最重要的编程语言之一。本报告中介绍了用JAVA语言实现画笔系统的全部过程。 本次课程设计是配合JAVA程序设计课程,帮助我们深入学习掌握JAVA语言,熟练运用这个工具来编写的。通过课程设计各个项目的综合训练,培养学生实际分析问题、编程和动手能力、提高学生的综合素质。本课程设计尝试使用一些较生动的示例和设计项目,激发学生学习兴趣,引导学生主动学习,正确理解、接受需要重点掌握的知识点,为参加项目开发及更深入学习做好准备。 本次课程设计主要是用JAVA实现画笔系统,其系统主要完成以下功能:设计一个画图程序,能够实现画笔、画直线、画圆形、画矩形、修改该画笔的大小以及颜色。该画图程序还需具有橡皮擦功能以及清空整个画面的功能 关键词:画图工具,JA V A

目录 摘要 (1) 目录 (2) 1.绪论 (3) 2. 开发环境介绍 (4) 3.需求分析 (5) 3.1总体目标..................................... 错误!未定义书签。 3.2要实现的功能 (7) 4.概要设计 (8) 4.1设计准备 (8) 4.2需要用到的类 (8) 5.详细设计 (9) 5.5类的设计 (9) 5.2类的方法设计 (9) 6.测试数据及运行结果 (8) 7.总结 (15) 8.参考文献 (15) 9.源程序 (15)

初始画图软件教案

《认识画图软件》的教案 【教材分析】 内容分析:《认识画图软件》一课,是小学信息技术课程四年级上册第一课的内容。本课是学生在初步了解用计算机绘画制作的基础上,设置的一节课。本课的主要内容由:作品赏析、启动画图、窗口组成、选择工具、做一做等组成。 教学对象分析:本班学生是小学四年级的儿童,学生在学习方面拥有激烈的学习绘图兴趣,较好的理解能力、表达能力、操作能力,学习效率极高,他们善于模仿,喜欢创新,遇到困难能积极向同学或老师提问,同学之间居于哦热情相助的习惯。 学生的初始能力:由于是第一次接触电脑绘图软件,大部分学生只有纸上绘图的操作基础。 学生的信息素养:学生虽然有在纸上绘图的经验,但没有在电脑上绘图的经验。 【教学方法】 案例教学法、演示法、任务驱动法、小组讨论法 本节课的内容针对于小学四年级的学生来说,因为他们的使用计算机的能力还相当有限,即使在前期做了很好的设计规划,讲授过程中仍然十分费力,有一些难度。通过在导入部分展示一些“欣赏作品”,激发学生学习画图软件的兴趣和愿望,引入本课的学习。在启动画图软件的教学环节,我采用演示法,一边讲解进入画图的两种方法,让学生感受到进入画图软件不同的方法。设置一个任务,让学生运用已学习的知识、巩固知识,发挥动手能力,充分调动学生学习的积极性,以任务驱动的方式查漏补缺,使教学内容合理流动,水到渠成。最后,四个人为一个小组,用讨论的方式进行学习,解决在学习过程中遇到的问题,在探究中找到乐趣。 【教学目标】 知识与技能: 1、通过学习,让学生知道Windows7系统中自带的一个画图软件。 2、掌握画图软件的进入与退出,并熟悉画图软件的窗口。 3、熟练说出工具箱中工具的名称及用途。 4、使用铅笔工具写字和刷子画树 过程与方法: 1、通过让学生欣赏作品,让学生初步了解画图的作用,激发学生学习画图软件的兴趣。 2、通过学生交流、师生交流,培养学生使用画图软件提高电脑绘图的能力。 情感态度与价值观 1、通过学生本体的学习探索与实践操作,增强学生学习软件的兴趣,培养实践探索精神及合作精神。适时渗透学生德育教育。 2、通过小组协作和竞赛研究活动,培养学生合作学习的意识、竞争参与意识和研究探索的精神,从而调动学生的积极性。 【重点和难点】 重点:初识“画图”窗口组成;认识绘图工具箱。 难点:用鼠标选择前景色和背景色;用铅笔写字与刷子画树。 【教学环境】

java图形化界面实现简单计算器

学号 天津城建大学 Java 语言程序设计C 实验报告 实验5:计算器 学生姓名路江飞 班级11卓越7班 一、实验目的 1.掌握Java图形组件与布局管理器的使用; 2.掌握使用Java事件处理机制的使用; 3.掌握图形界面的各种控件的使用,如:标签、文本框、按钮、复选框、列表框、窗框等。 二、实验要求 1.采用布局管理器进行界面的布局; 2.学会对不同的事件用相应的事件处理器; 3.写出实验报告。要求记录编译与执行Java程序当中的系统错误信息提材示,并给出解决办法。 三、实验内容 1.在随堂练习的简单计算器基础上设计一个多功能计算器。包括复杂的功能:比如记忆功能,三角函数,成方,对数等等。 五、实验结果 文件1: package computer; import java、awt、BorderLayout; public class Compuer extends JFrame { private JPanel contentPane; private JTextField textField; private JTextField textField_1;

private JTextField textField_2; private JTextField textField_3; /** * Launch the application、 */ public static void main(String[] args) { EventQueue、invokeLater(new Runnable() { public void run() { //运行程序时,点击按钮输入公式,当点击等于号时显示出计算结果 try { Compuer frame = new Compuer(); frame、setVisible(true); Time time=new Time(); time、setTime(frame、textField_3); Thread thread=new Thread(time); thread、start(); } catch (Exception e) { e、printStackTrace(); } } }); } /** * Create the frame、 */ public Compuer() { setTitle("\u8BA1\u7B97\u5668"); setName(""); final StringBuffer s=new StringBuffer(); setDefaultCloseOperation(JFrame、EXIT_ON_CLOSE); setBounds(100, 100, 412, 448); contentPane = new JPanel(); contentPane、setBorder(new EmptyBorder(5, 5, 5, 5)); setContentPane(contentPane); contentPane、setLayout(null); textField = new JTextField(); textField、setEnabled(false); textField、setLocale(Locale、UK); textField、setForeground(Color、PINK); textField、setText(" \u6B22\u8FCE\u4F7F\u7528\u8BA1\u7B97\u5668"); textField、setBounds(10, 20, 368, 30); contentPane、add(textField);

用Windows自带的“画图”软件绘图的方法及技巧

用Windows自带的“画图”软件绘图的方法及技巧 1引言 对于绝大多数微机用户来讲,用电脑画图始终是个令人感到头疼的问题。尽管许多常用的文字处理软件(如:Word)都带有绘图功能,但是使用这些软件画图却费时费力,效果不佳。一个图形往往会被操作者画得七零八落。有些用户虽然安装了如AutoCAD等专业绘图软件,但由于这些软件专业性太强,甚至对操作者的英文水平有相当的要求,因此能够熟练驾驭此类绘图软件的操作者很少。甚至多数普通操作者的微机中根本就未安装这些软件。 其实,要想快速画出漂亮、实用的图形并不难。通过摸索,发现并总结了一套使用电脑画图的方法,只要您的电脑中安装的是最常用的Windows操作系统,就可以利用其自带的“画图”功能软件,简洁快速地画出规整漂亮的图形来。 2在Windows操作系统中找到“画图”工具软件 用鼠标沿着电脑屏幕左下方开始的以下级联菜单一路单击,即可找到“画图”工具软件:开始→所有程序→附件→画图。打开画图程序界面后,操作者就可以施展本领,进行画图操作了。 3“画图”工具软件的基本功能介绍 在画图软件界面的左侧列有十六个功能按钮,将鼠标箭头指向任何一个功能按钮都会自动显示提示文字,告知每个按钮的基本功能。这些功能主要有“直线”、“矩形”、“椭圆”、“橡皮擦”、“文字”等。以画矩形为例来说明功能按钮的基本使用方法:用鼠标单击矩形功能按钮→将鼠标箭头移至右侧空白的画图区域→按下鼠标左键不要松开→斜向拖动鼠标→松开鼠标。这样,一个矩形的绘制就完成了。鼠标拖动的方向就是矩形对角线的方向。读者可以仿照此例,练习一下直线、椭圆等图形的画法。 若画图软件界面没有出现这十六个功能按钮,可以用鼠标单击“查看”下拉菜单,选中“工具栏”一项,则屏幕界面上就会显示这些功能按钮。 4功能性技巧介绍

人教版初一《用画图软件设计邮票》教学设计

人教版初一《用画图软件设计邮票》教学设计 教材:《初中信息技术》(人民教育出版社) 第一册第一单元活动三《用计算机画画》第二课时 学生:初中一年级 教学环境:电脑网络教室,多媒体网络教学平台 课时:1课时 一、本节课设计思路 1、教材和学生现状分析 我记得有学生问过我这样一个问题,老师学某某软件有什么用?为什么会这么问,因为学生不知道学了这个软件能做什么。虽然在教某一个软件的时候会介绍这个软件的作用,但不让学生亲自用这个软件去完成某一样东西的时候,学生只会感到很茫然,学起来很盲目。因此我设计本堂课的目的,就是能让学生学以致用。画图软件是一个学生比较感兴趣的软件,在前一课的学习中,学生已经掌握了画图软件各种画图工具的使用,并能自己创作画出一些美丽漂亮的图画。在这样的基础上,教材又进行了加深,要利用画图软件对图片进行编辑和修改。教材上这节内容设计比较散、乱,根据我校学生的实际情况和他们爱动手、想获得成就感的心理特点,于是,我就想了一个容易使学生感兴趣也容易获得成就感的题目,用画图软件设计邮票。在设计邮票的过程中既可以使学生掌握图片的编辑和修改方法,又可以增长学生的知识,激发学生的创作欲,设计出各种不同的邮票。 2、本节课的教学目标 1)知识与技能 ①使学生了解画图软件的其它用途 ②使学生了解一些邮票的知识 ③掌握邮票设计的几个要素 2) 过程与方法 ①使学生掌握选取图片、复制移动、旋转拉伸图片的方法 ②掌握“编辑”、“图象”等菜单的使用 ③综合利用画图各种工具设计邮票 3)情感态度价值观 ①培养学生动手能力和创造力 ②激发学生学习信息技术的兴趣 3、本节课的教学重点和难点 重点:①选取图片、复制移动、旋转拉伸图片的方法 ②“编辑”、“图象”等菜单的使用 难点:画图中各种工具的综合利用 4、本节课的教学方法 任务驱动、讲练结合、自主探究学习 (这节课的任务就是设计制作出一张邮票,通过邮票各部分设计任务的完成,最终完成这个大任务) 5、本节课的教学手段 多媒体教学网(广播教学)、教学课件、学件、实物投影仪 学生的作品展示 6、课前准备

C制图常用工具使用方法

C制图常用工具使用方 法 集团企业公司编码:(LL3698-KKI1269-TM2483-LUI12689-ITT289-

选择工具栏要勾选的几个选项。左下角显示模式: 1、矩形 选择工具,出现: , 点击起始点后出现:(注意命令提示,一般常用命令为D) 输入’d’: 随后出现: 输入具体值 输入具体值 随后出现 有四个方向可选。 2、扩边、平移、线宽 扩边:首先选中图形,选择偏移工具 输入偏移数值: 选择偏移方向(外偏移、内偏移): 点击右键确认。 平移: 首先选中图形,选取平移工具,制定基点(相对不动的点): 挪动鼠标,虚线图形随鼠标移动,到合适位置后点击鼠标左键完成。

线宽选择: 选择图形,点击下拉菜单: 选择合适线宽即可。 3、标柱 首先设置标柱样式: 出现对话框: 选择修改项,修改其内容 修改完成后确定。在需要标柱图形左起始点,点击 在需要标柱图形右结束,点击 松开鼠标,向上滑动鼠标,到合适位置点击左键。 4、缩放 选取图形,选择工具,首先选择基点,图例将矩形右下角为基点,

滑动鼠标, 注意左下角文字说明 比较直观的缩放方法是选择“r”命令 在图形下发点击左键,出现: 再滑动鼠标出现 点击左键,出现图形: 缩放到合适大小后点击鼠标左键。 5、旋转 选择图形,点取工具,制定基点 移动鼠标 6、圆弧 选择工具,选择起点 选择第二个点 命令参数有: 一般画门的时候可应用,例如: 7、打断 选择工具: 8、带基点复制 选择图形,后标题栏中选取: 制定基点,基点可根据实际情况选取。 例如以左下角为基点: 移动鼠标,鼠标中心点即为图形的坐下角,后粘贴:将鼠标靠近原图型,

java编写的简单的计算器程序

计算器 项目内容:编写一个Applet,模仿windows附件所带计算器的功能,可以帮助用户完成计算功能,具体如下图所示。 项目要求:使用图形的方式借助窗口、菜单、按钮等标准界面元素和鼠标操作,来帮助用户方便地向计算机系统发出命令,启动操作,并将系统运行的结果同样以图形的方式显示给用户,这样更加直观和生动; 1.Applet容器中组件的添加与设置,包括面板以及菜单的使用; 2.容器中组件的布局管理; 3.Java核心包中数组、数学计算类的使用; 4.异常的处理; 5.事件处理模型中的三类对象的使用: 1.Event-事件,用户对界面操作在java语言上的描述,以类的形式出现,例如键盘操作对应的事件类是KeyEvent。 2.Event Source-事件源,事件发生的场所,通常就是各个组件,例如按钮Button。 3.Event handler-事件处理者,接收事件对象并对其进行处理的对象。 6.程序中事件处理的流程:

1.计算流程的细化 参考代码: import .*;

import .*; import .*; import import import public class Calculator implements ActionListener { #############"); dd(panel); panel1 = new JPanel(); panel2 = new JPanel(); (new BorderLayout()); 键入计算的第一个数字。\n"); ("2. 单击“+”执行加、“-”执行减、“*”执行乘或“/”执行除。\n"); ("3. 键入计算的下一个数字。\n"); ("4. 输入所有剩余的运算符和数字。\n"); ("5. 单击“=”。\n"); aboutCal = new JMenuItem(" 关于计算器(A)"); (this);

EXCEL中的绘图工具使用技巧

E X C E L中的绘图工具 使用技巧 Document serial number【LGGKGB-LGG98YT-LGGT8CB-LGUT-

EXCEL中的绘图工具使用技巧 2009-04-17 11:59:37 阅读5396 评论1 字号:大中小订阅 基础班选修课讲义 1、从绘图工具栏直接绘制直线、单边带箭头直线、椭圆、矩形; 2、从绘图工具栏“自选图形”中选择:线条、基本形状、箭头汇总、流程图、星与旗帜、标注、其它自选图形…… 3、添加和编辑绘制图形中的文字内容(右键-添加文字); 4、工具栏中直接选择“文本框”、“竖排文本框”; 5、图形右键菜单的其它功能(超链接、宏等)。 二、绘制单位正方形、单位圆、单位正xx…… 1、从绘图工具栏及其“自选图形”中选择矩形、椭圆、菱形、平行四边形等图标……到单元格内点击一下,就可生成单位正方形、单位圆、单位正xx……(对线条不起作用); 2、在绘图工具栏的“自选图形”中双击选择的图形,可直接生成单位圆、单位正方形、单位正菱形、单位正平行四边形等图案(单位边长)。 三、连续绘图 1、双击绘图工具栏中需要绘制的图形,比如椭圆、长方形、直线,以后可以连续绘制出椭圆/圆、长方形/正方形以及直线;按ESC键取消连续画图; 2、对绘图工具栏“自选图形”中的图形使用双击,只能产生“单位正xx”图形,不能连续绘图(其作用见“二、2”条)。 3、右键绘图工具栏-自定义-命令-自选图形-选择命令-拖到工具栏中,今后就可以双击这些图形连续绘图。 四、改变图形 1、改变绘制图形的线条、箭头、边框、色彩设置(右键或者双击图形,设置自选图形格式;工具栏中选择); 2、点击和转动相关图形中的绿色圆点转动图形; 3、使用绘图工具栏“翻转”按钮; 4、点击和拖动相关图形中的黄色圆点改变图形; 5、右键已经画好的图形,点击绘图工具栏的“绘图”,选择“改变自选图形”,再选择你想得到的图形; 6、绘图默认效果的设置; 7、(重要应用之一)改变单元格批注图形:单元格批注显示后,右键“批示”框,点击绘图工具栏的“绘图”,选择“改变自选图形”,再选择你要得到的图形;

Java画图软件设计报告

佛山科学技术学院 《可视化编程技术》课程设计报告 画图软件设计 学生姓名:周敏婷 学号:2011914123 年级专业:11级教育技术学2班 指导老师:容汝佳 学院:教育科学学院 广东★佛山 提交日期:2013年6月

目录 1. 前言 (2) 2.概要设计 (3) 2.1 开发环境 (3) 2.2 画图软件功能 (3) 2.3 界面设计 (3) 2.4 类的框架结构图 (4) 3. 详细设计 (4) 3.1 使用的JAVA类的说明 (4) 3.2 类的主要方法 (5) 3.2.1 颜色选择器 (5) 3.2.2 控制画笔样式 (5) 3.2.3 选取颜色按钮的监听件类 (6) 3.2.4 设计总体认识 (6) 3.2.5 程序流程图 (7) 4. 运行结果 (7) 5. 测试分析 (8) 5.1 程序运行情况 (8) 6. 源程序 (8) 参考文献 (14) 设计总结 (14)

摘要:该程序是一个图形界面的简单的java画图软件,具有良好的界面,使用人员能快捷简单地进行操作。该画图软件操作较为简单,只需要一直按着左键就能根据你鼠标移动的方面,画出你想要的图案。你也可以选择你自己想到的颜色和画笔的粗细。而且可以显示你当前的画笔的状态。界面为灰白对称。是一个非常简单的作图工具,让人能轻松上手。 关键字:java,画图类,方法,事件 1 前言 随着科学技术的不断发展,计算机已经成为我们工作学习和生活中不可缺少的工具。文本编辑器是个人计算机最司空见惯的应用程序了,在学习了Java语言之后,我决定使用Java语言编写一个简单的画图工具,可以实现简单的画图作图功能,满足日常基本的工作学习和娱乐需要。 Java是由Sun公司开发的新一代纯面向对象的网络编程语言。其目标是建立一种在任意种机器、任一种操作系统的网络环境中运行的软件,实行所谓的“程序写一次,到处运行”的目标。正因为如此,Java已成为当今Internet上最流行、最受欢迎的一种程序开发语言。 Java开发小组把Java按特性分为基本版、移动版、企业版,每个版本有一个软件开发包。Java基本版本叫Java 2标准版(Java 2 Standard Edition,J2SE),它包含建立Java应用程序或者是Applet所需的应用程序编程接口(API)。Java 2移动版(The Java 2 Mobile Edition,J2ME)包含创建无线Java应用程序的API。还有Java 2企业版(The Java 2 Enterprise,J2EE)是J2SE的增强版本,包含建立多层架构应用程序API。 Java语言是由C++语言发展起而来的,是一种彻底的面向对象的程序设计语言。作为一种纯面向对象的程序设计语言,它非常适合大型软件的开发。Java 语言去掉了C++语言的一些容易引起错误的特性。Java语言的特点有:面向对象、跨平台、安全性、多线程和图形功能强。

java简单计算器源代码

简单计算器代码 package calcultorthree; import java.awt.BorderLayout;//导入边界布局管理器类 import java.awt.GridLayout;//导入网格布局管理器类 import java.awt.TextField;//导入文本区域类 import java.awt.event.ActionEvent;//导入事件类 import java.awt.event.ActionListener;//导入事件监听者类 import javax.swing.JButton;//导入按钮类 import javax.swing.JFrame;//导入窗体 import javax.swing.JPanel;//导入面板 /** *本例实现了简单计算器代码,具备加减乘除和正弦功能,旨在抱砖引玉。熟悉java的同学,可以在此基础上实现更复杂的功能。 * @author Fjsh */ public class CalcultorThree { //新建对象,在构造函数中进行初始化 JFrame frame;//新建窗体对象 JButton buttonzero,buttondot,buttonequal;//新建按钮“0”“.”“=” JButton buttonplus,buttonminus,buttonmultiple,buttondevision, buttonsin,buttontozero;//新建按钮“+”“-”“*”“/”“sin”和归零按钮JButton buttonone,buttontwo,buttonthree,buttonfour,buttonfive,buttonsix, buttonseven,buttoneight,buttonnine;//新建数字按钮“0”“1”“2”“3”“4”“5”“6”“7”“8”“9” JPanel panelwest,panelcenter,paneleast;//新建三个面板 TextField tf;//新建文本区域对象 public CalcultorThree(){ //初始化对象 tf=new TextField(30);//构造空文本字段,字符宽度为30 frame =new JFrame("CalculatorThree");//构造窗体对象,名称为“CalculatorThree”

JAVA绘图实验报告

南京工程学院 实 验 报 告 课程名称 java基础 实验项目名称 图形用户界面设计 实验学生班级 实验学生姓名 学 号 同组学生姓名 无 实验时间 2012年11月 实验地点 实验成绩评定 指导教师签字 年 月 日 一、实验目的和要求 1.目的:掌握java awt及swing组件的使用方法,包括窗口、框 架、对话框、布局方式、面板、文本编辑器、按钮、组合框等,合理利 用委托事件处理模型,掌握不同组件,不同事件的事件处理方法,设计 出能够响应事件的java图形用户界面。 2.要求:设计图形用户界面,事件处理,异常处理并弹出对话框, 提示重新输入信息。 二、实验题目 验证哥德巴赫猜想,添加图形用户界面 三、实验方法与步骤(需求分析、算法设计思路、流程图等) 1.添加图形用户界面 import java.awt.*; import java.awt.event.*; import javax.swing.*; public class gdbh extends frame implements actionlistener //窗口框架响应单击事件,利用awt组件设计框架 { private button button; //按钮 private textfield text1; //文本行 private textarea text2; //文本区 public gdbh() { super(验证哥德巴赫猜想); //设置框架窗口标题 this.setbounds(450, 200, 350, 400); //设置框架的位置 和尺寸 this.setresizable(false); // 设置框

认识画图软件教学设计

《认识画图软件》教学设计 设计人:大方县兴隆乡兴隆小学郝家彬 教学内容: 贵州版信息技术教材四年级上册P1~P4。 教材分析: 本课是教材关于画图知识的初步认识,贯穿着以后整个画图的知识教学,是学生能够顺利、快捷操作使用画图的基础。本课主要介绍了启动“画图”程序的方法和了解“画图”窗口的组成及初步认识绘图工具箱、颜料盒。使他们明白用计算机画图,既不用纸和笔,也不用任何颜料。从而激发学生利用计算机画图的兴趣,调动学生的积极性。 学情分析: 由于本地未开设信息技术课程,因此这是学生第一次接触电脑绘图的学习,大部分的学生只有纸上绘图的操作基础。由于大部分学生可能没有接触过电脑,所以在教学中学生在操作方面会受到一定的影响。 教学目标: (一)知识与技能 1、认识电脑系统中自带的画图软件。 2、掌握画图软件的启动与退出的方法,并熟悉画图软件窗口的组成。 3、尝试自选画图工具完成一幅简单的图画。 (二)过程与方法:通过讲解与演示等方法,进一步让学生熟悉画图软件窗口的组成及画图工具,为以后能熟练运用画图软件画图打下基础。 (三)情感态度与价值观:通过画图软件的学习,激发学生对学习电脑的兴趣,感受成功,体验学习计算机,用计算机画画的快乐! 重难点分析: 重点是认识并掌握画图窗口的各个组成部分。 难点是画图软件工具的认识。 教学过程: 一、创设情境,激趣导入。 1.谈话 同学们,平时画画用的是什么工具呢?(学生自由说)今天老师想要送件礼物给大家,猜猜会是什么呢?(学生一脸迟疑)期待吗?好,请大家看向大屏幕,马上送给你们的礼物就出来了。 2.演示 教师用画图软件画出机器猫图,画完后问同学们,这是什么?(学生自由说)

常用机械制图手工绘图工具及使用技巧

常用机械制图手工绘图工具及使用 技巧 熟练掌握常用的绘图工具使用技巧,对于提高手工绘图的质量和速率有重要意义。 —、常用绘图工具 (1)(图板)画图时,需将图纸平铺在图纸上,所以,图板的表面必须平整、光洁、且富有弹性。图板 的左侧边称为导边,必须平直。常用的图板规格有0号、1号和二号三种。 (2)丁字尺丁字尺主要用于画水平线,它由尺头和尺身组成。尺头和尺身的连接处必须牢固,尺头的 内侧边与尺身的上边(称为工作边)必须垂直。使用时,用左手扶住尺头,将尺头的内侧边紧贴图板的 导边,上下移动丁字尺,自左向右可画出一系列不同位置的水平线,如图1–18a所示。 (3)三角板三角板有45°-90°角和30°-60°-90°角的各一块。将一块三角板与丁字尺配合使用,自下而上 可画出一系列不同位置的直线,如图1-18b所示;还可画与水平线成特殊角度如30°、45°、60°的倾斜线,如图1-18c所示将两快三角板与丁字尺配合使用,可画出与水平线成15°、75°的倾斜线,如图2所示。两块三角板互相配合使用,可任画已知直线的水平线或垂直线,如图3所示。 图1用丁字尺和三角板画线 图2画15度75度斜线 图3画已知直线平行线和垂直线 二、分规、比例尺 (1)分规分规是用来量取尺寸、截取线段、等分线段的工具。分规的两腿端部有钢针,当两腿合龙时, 两针尖应重合于一点,如图4所示。图5所示为用分规在比例尺上量取尺寸(图5a),然后在线上连续截取等长线段(图5b)的方法若欲将图5c所示的AB线段四等分,可先任凭自测估计,将分规的两针 尖开到约为AB/4进行试分,如有剩余(或不足)时,再将针尖间的距离张大(或缩小)e/4,e为剩余或不足量,再进行试分,直到满意为止。用试分法也可等分圆或圆弧。 (2)比例尺比例尺的三个棱面上有六种不同比例的刻度,如1:100、1:200等,可用于量取不同比例的 尺寸。 图5分规画法 三、圆规圆规是用来画圆或圆弧的工具。圆规固定腿上的钢针具有两种不同形状的尖端:带台阶的尖端是画圆货圆弧时定心用的;带锥形的尖端可作分规使用。活动腿上有肘形关节,可随时装换铅芯插脚、 鸭嘴脚及作分规用的锥形钢针插脚,如图6所示。 图6圆规及附件 画圆或圆弧时,要注意调整钢针在固定腿上的位置,使两腿在合龙时针尖比铅芯稍长些,以便将针尖全部扎入内,如图7a所示;按顺时针方向转动圆规,并稍向前倾斜,此时,要保证针尖和笔尖均垂直纸 面,如图7b所示;画大圆时,可接上延长杆后使用,如图7c所示。 图7圆规用法 四、曲线板曲线板是绘制非圆曲线的常用工具。画线时,先徒手将各点轻轻地连成曲线,如图8a所示;然后在曲线板上选取曲率相当的部分,分几段逐次将各点连成曲线,但每段都不要全部描完,至少留出后两点间的一小段,使之与下段吻合,以保证曲线的光滑连接,如图8b所示。 图8非圆曲线的描绘 五、铅笔(1)铅笔的型号及应用绘图铅笔分软与硬两种型号,字母“B”表示软铅笔,字母“H”表示硬铅芯。“B” 之前的数值越大,表示铅芯越硬。 之前的数值越大,表示铅芯越软;“H” 字母“HB”表示软硬适中的铅芯。 图9修磨铅笔的方法

java简易画图板

华北科技学院 课程设计说明书 班级: 网络B101 设计题目: 画图板软件开发和设计 评语:_________________________________ _________________________________________ _________________________________________ _________________________________________ _________________________________________ 评阅成绩:____评阅教师:_____ 目录 1 引言 (1)

1.1课程设计选题 (1) 1.2课程设计的目的 (1) 1.3本选题的设计背景 (1) 2 需求分析 (1) 2.1 功能需求 (1) 2.2 系统的开发运行环境 (2) 3 总体设计 (2) 3.1 系统体系结构设计 (2) 3.2系统功能模块及主要类设计 (3) 4 详细设计与实现 (6) 4.1 菜单栏模块 (6) 4.2 文字字型工具栏模块 (7) 4.3 工具栏模块 (8) 4.4 颜色选择面板模块 (10) 4.5 鼠标状态栏模块 (12) 4.6 画图区域以及整体布局模块 (13) 5 小结和展望 (15) 参考文献 (17) 附录 (17) 使用说明书 (17)

1引言 1.1课程设计选题 《画图板软件开发和设计》 1.2课程设计的目的 使学生巩固和加深以Java 语言为基础的面向对象编程技术理论知识的理解,提高实际动手编程能力的培养,掌握以Java为核心的应用软件开发方案,达到能独立阅读、编制和调试一定规模的Java程序的水平。 1.3本选题的设计背景 平时生活中,我们会需要处理一些基本的图像,也有可能需要花一些简单的图像,平时所使用的图形处理工具有 PhotoShop、Windows 画图工具等,其中PhotoShop 是一款非常强大的图形处理工具,Windows 画图工具则是一款较为简单的画图工具,功能较为简单,用Windows画图工具,是一种比较简单与具有代表性的画图工具,虽然功能不够强大,但具有大多图片处理程序所必需的基本功能:铅笔画图、各种数学函数图形、填色、取色、橡皮擦等等。所以这次课程设计我做的就是一个仿照Windows画板的程序。 通过画图板软件开发与设计,更深刻地体会java语言较之其他语言在图形用户界面的优势。熟悉java语言中常用的关于画图的各个类的功能和常用的方法(java图形用户界面中的众多函数与类的关系),并在实验过程中加深对java语言的理解与运用。 2需求分析 2.1 功能需求 对于绘图软件,应具备最基本的绘制直线,矩形框,圆形框,椭圆框等最基本功能,此外,要可以对绘制的图形进行修改;将绘制好的图形进行保存,打开以前保存的图形;在需要的时候,可以绘制实心矩形,实心圆形,实心椭圆等常见的几何图形。可

《认识画图软件》教学设计

《认识画图软件》教学设计 知识与技能: 1、认识Windows XP系统中自带的画图软件。 2、掌握画图软件的启动与退出的方法,并熟悉画图软件窗口的组成。 3、熟练掌握工具箱中个别工具的使用及操作方法。 过程与方法:通过运用画图软件绘画,进一步熟练掌握画图软件的操作及使用方法。 情感态度与价值观:通过画图软件的学习,使学生进一步熟练掌握画图软件各部分的操作方法,同时激发学生对学习电脑的兴趣,感受成功,体验学习计算机,用计算机画画的快乐! 教学目标: 1、知道并掌握画图软件的打开、退出方法; 2、认识并掌握画图窗口的各个组成部分; 尝试使用画图软件工具箱中的椭圆、铅笔、直线、橡皮工具。 教学重点:认识并掌握画图窗口的各个组成部分。 教学难点:画图软件工具的认识及操作方法。 教学过程: 一、导入 我们在上美术课的时候,我们都用一些什么工具画画? 接下来我们来欣赏几张图画,你喜欢它们吗?看它们美吗?你们知道这些画是怎么画出来的吗?这些画都是用电脑画出来的。你们想不想也用电脑试一试,跟他们比一比,看你们能不能超过他们? 如果想用电脑画画,首先我们就应该先认识一些图像处理软件。目前,有许多图像处理软件可以用来画画,今天,我们就来学习这个大家庭中的一个最简单,最容易学会的成员,利用它我们可以画出很多漂亮的图画,比如我们刚才看到的。今天我们就来一起来学习并认识画图软件。(播放PPT并板书课题) 二、新课讲解 “画图“软件是Windows系统中的一名成员。我们想用它来画出漂亮的图画,我们就应该先去了解它,想了解它就需要启动或是关闭它。 第一部分认识画图软件(理论部分) (一)启动画图软件的方法:(边说边在教师机上演示,并把最后结果用PPT 的形式展示在教师机上) 1、鼠标单击开始——程序——附件——画图。 2、双击桌面上的“画图”软件图标。 (二)关闭画图软件的方法:(边说边在教师机上演示,并把最后结果用PPT

简易计算器Java实训报告

实训报告书实训名称:Java程序设计实训 系(部):信息工程系 专业班级:计算机科学与技术 学生姓名: 学号: 指导教师:张民 完成日期:2015.12.11 山东科技大学泰山科技学院

课程实训报告书

目录 1 实训目的 (3) 2 简易计算机的分析与设计 (3) 2.1 系统功能描述 (3) 2.2 系统模块设计 (3) 2.3 数据库结构设计 (4) 3 主要代码清单 (5) 4 程序运行与测试 (9) 5 实训总结 (11)

简易计算机的设计与实现 1 实训目的 通过本课程设计能够较全面的掌握面向对象程序设计的有关概念和开发方法,以便能较全面地理解、掌握和综合运用所学的知识,提高自身的编程能力。利用Java Applet图形界面首先开始设计一个计算器的界面,定义计算器所需要的按钮并赋给其按钮名称,使得使用计算器时简单明了,清晰可见,操作轻松。 给各个按钮进行算法,利用鼠标点击事件,当鼠标点击某个按钮时就开始执行那个按钮所定义的算法,生成数据并显示。 除数字的输入为直接进行输入外,其他运算例如+、-、*、/、开平方等算法要求计算时通过内部较为复杂的运算将结果显示在显示屏上。 至于其中的进制转换功能的实现则是直接调用Java中进制转换的函数,例如要将十进制转换成二进制则可直接调用函数Integer.toBinaryString(int i)来实现,充分显示了Java语言的简洁性和Java语言功能的强大性。 当然了在输入数据时还要进行异常捕捉,防止越界的现象的发生,这也是Java语言健壮性的体现! 2 简易计算机的分析与设计 2.1 系统功能描述 1)可进行“+”、“-”、“*”、“/”以及混合运算。 2)支持()改变运算的优先级 3)可进行二、十六和十进制数的相互转换 4)支持复制和粘贴操作 2.2 系统模块设计 (1)加法 两个数据进行加操作,可以为小数。 (2)减法 两个数据进行减操作,可以为负数相减。( 3)乘法

画图软件教学设计公开课

画图软件教学设计 教学目标: 知识与技能 1、认识Windows系统中自带的画图软件。 2、掌握画图软件的启动与退出的方法,并熟悉画图软件窗口的组成。 3、熟练掌握工具箱中个别工具的使用及操作方法。尝试使用画图软件工具箱中的椭圆、铅笔、直线、橡皮工具。 过程与方法 通过运用画图软件绘画,进一步熟练掌握画图软件的操作及使用方法。 情感态度与价值观 通过画图软件的学习,使学生进一步熟练掌握画图软件各部分的操作方法,同时激发学生对学习电脑的兴趣,感受成功,体验学习计算机用计算机画画的快乐! 教学重点:认识并掌握画图窗口的各个组成部分。 教学难点:画图软件工具的认识及操作方法。 教学过程: 一、导入 我们在上美术课的时候,我们都用一些什么工具画画?

接下来我们来欣赏几张图画,你喜欢它们吗?看它们美吗?你们知道这些画 是怎么画出来的吗?这些画都是用电脑画出来的。你们想不想也用电脑试一试, 跟他们比一比,看你们能不能超过他们? 如果想用电脑画画,首先我们就应该先认识一些图像处理软件目前,有许多图像处理软件可以用来画画,今天,我们就来学习这个大家庭中的一个最简单,最容易学会的成员,利用它我们可以画出很多漂亮的图画,比如我们刚才看到的。今天我们就来一起来学习并认识画图软件。(播放PPT并板书课题) 二、新课讲解 “画图“软件是Windows系统中的一名成员。我们想用它来画出漂亮的图画,我们就应该先去了解它,想了解它就需要启动或是关闭它。 第一部分认识画图软件 (一)启动画图软件的方法:(边说边在教师机上演示,并把最后结果用PPT的形式展示在教师机上) 1、鼠标单击开始——程序——附件——画图。 2、双击桌面上的“画图”软件图标。

相关文档
最新文档