java画图板java写的画图板保存图片是怎么实现的

java画图板  时间:2021-01-16  阅读:()

跪求------java画图板设计(菜单方式) 急,急,急

看看你要的是不是这个

我只是用了一个菜单而已,只有清屏功能

import javax.swing.*; import java.awt.*; import java.awt.event.*;

public class PlantPanel extends JFrame{ private JMenuBar jmb; private JMenu jmu1; private JPopupMenu jpm1; private JMenuItem item1; private Plant jpl; public PlantPanel(){ super("画图"); item1 = new JMenuItem("清屏"); jmu1 =new JMenu("功能"); jmb = new JMenuBar(); jmu1.add(item1); jmb.add(jmu1); jpl=new Plant(); item1.addActionListener(new ActionListener(){ public void actionPerformed(ActionEvent e){ clear(); } }); add(jmb,BorderLayout.NORTH); add(jpl,BorderLayout.CENTER); setLocation(400,300); setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); setSize(400,300); setVisible(true); } public void clear(){ this.remove(jpl); jpl =new Plant(); this.add(jpl,BorderLayout.CENTER); validate(); } public class Plant extends JPanel implements MouseMotionListener{ public Plant(){ addMouseMotionListener(this); } public void mouseDragged(MouseEvent e){ Point p=new Point(); Graphics g1= getGraphics(); paint(g1,p,e); } public void mouseMoved(MouseEvent e){ } public void paint(Graphics g,Point p,MouseEvent e){ p=e.getPoint();

g.setColor(Color.black);

g.fillOval(p.x,p.y,7,7);

}

}

public static void main(String arg[]){ new PlantPanel(); } }

简单的JAVA画板程序

import java.awt.*; class Draw{ public static void main(String[] args){ Frame f=new Frame(); f.setSize(300,300); f.add(new Canvas(){ public void paint(Graphics g){ g.setColor(Color.red); g.fillOval(0,0,80,80); } }); f.show(); } }

简单到我用匿名类了呵呵

求好心人帮找或做个JAVA画板程序 代码,主要能实现简单的画板功能!

取个叫pb.java的文件拷贝进去(pb类为main入口),直接运行 —————————————— 楼主, 不好意思我是学j2ee的,GUI不会,你看我以前的回答一个awt和swing都没有的,这是我们项目组一个牛人的代码,我在我的新系统中嵌入的,我实在无能为力,你觉的好就用不好我也没办法的, 楼主你可以等等看,应该还有牛人有解决方法 ———————————————— import java.applet.*; import java.awt.*; import java.awt.event.*; import java.util.*; import javax.swing.*; import java.awt.geom.*; import java.io.*; class Point implements Serializable { int x,y; Color col; int tool; int boarder; Point(int x, int y, Color col, int tool, int boarder) { this.x = x; this.y = y; this.col = col; this.tool = tool; this.boarder = boarder; } } class paintboard extends Frame implements ActionListener,MouseMotionListener,MouseListener,ItemListener { int x = -1, y = -1; int con = 1;//画笔大小 int Econ = 5;//橡皮大小 int toolFlag = 0;//toolFlag:工具标记 //toolFlag工具对应表: //(0--画笔);(1--橡皮);(2--清除); //(3--直线);(4--圆);(5--矩形); Color c = new Color(0,0,0); //画笔颜色 BasicStroke size = new BasicStroke(con,BasicStroke.CAP_BUTT,BasicStroke.JOIN_BEVEL);//画笔粗细 Point cutflag = new Point(-1, -1, c, 6, con);//截断标志 Vector paintInfo = null;//点信息向量组 int n = 1; FileInputStream picIn = null; FileOutputStream picOut = null; ObjectInputStream VIn = null; ObjectOutputStream VOut = null; // *工具面板--画笔,直线,圆,矩形,多边形,橡皮,清除*/ Panel toolPanel; Button eraser, drLine,drCircle,drRect; Button clear ,pen; Choice ColChoice,SizeChoice,EraserChoice; Button colchooser; Label 颜色,大小B,大小E; //保存功能 Button openPic,savePic; FileDialog openPicture,savePicture; paintboard(String s) { super(s); addMouseMotionListener(this); addMouseListener(this); paintInfo = new Vector(); /*各工具按钮及选择项*/ //颜色选择 ColChoice = new Choice(); ColChoice.add("black"); ColChoice.add("red"); ColChoice.add("blue"); ColChoice.add("green"); ColChoice.addItemListener(this); //画笔大小选择

求一个用JAVA写的最简单的画图工具;能画直线就行,其他不需要。

import java.awt.BorderLayout; import java.awt.Color; import java.awt.Graphics; import java.awt.Graphics2D; import java.awt.Point; import java.awt.event.MouseAdapter; import java.awt.event.MouseEvent; import java.awt.event.MouseMotionAdapter; import java.awt.geom.Line2D; import java.util.Vector; import javax.swing.JFrame; import javax.swing.JPanel; class LinePanel extends JPanel{ private static final long serialVersionUID = 1L; private Vector lines = new Vector ();//存储画板上所有的直线 private Line2D line = new Line2D.Double() ; private Line2D cur = new Line2D.Double() ;//起点到当前光标的直线 public LinePanel(){ super(); this.setBackground(new Color(255,255,255)); } public void setLines(Vector lines){ this.lines = lines; } public void setCur(Line2D cur){ this.cur =cur; } @Override public void paint(Graphics g){ super.paint(g); Graphics2D g2d = (Graphics2D) g; for(Line2D l2d:lines){ line = l2d; g2d.draw(line); } if(cur!=null){ g2d.draw(cur); } } } public class DrawLine extends JFrame{ private static final long serialVersionUID = 1L; private LinePanel panel; private Vector lines; private Point start; public DrawLine(){ panel= new LinePanel(); lines = new Vector(); this.setBounds(100, 200, 400, 400); this.setLayout(new BorderLayout()); this.add(panel,BorderLayout.CENTER); this.setPanelListener(); this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); this.setVisible(true); } private void setPanelListener() { panel.addMouseListener(new MouseAdapter() { @Override public void mousePressed(MouseEvent e) { start = new Point(e.getX(),e.getY()); } @Override public void mouseReleased(MouseEvent e) { Line2D line = new Line2D.Double(start.x,start.y,e.getX(),e.getY()); lines.add(line); panel.setLines(lines); line = null; } }); panel.addMouseMotionListener(new MouseMotionAdapter(){ @Override public void mouseDragged(MouseEvent e) { panel.setCur(new Line2D.Double(start.x,start.y,e.getX(),e.getY())); panel.repaint(); } }); } public static void main(String[] args) { new DrawLine(); } }

急求一个java绘图小程序

写一个panel,里面重载一个ponent()方法,在里面用 public void paint(Graphics g){ Graphics2D g2 = (Graphics2D)g g2.draw... 具体什么的就查api吧...主要是写着麻烦。





java写的画图板保存图片是怎么实现的

首先是得到图片的保存路径, 然后截取图片的路径。



然后再用文件的输入输出流。



把文件读入数级组中。



再它其写到指定的文件夹中。



这样就实现了文件的保存…… 祝你早日成功!

DMIT(季度$28.88)调整洛杉矶CN2 GIA优化端口

对于DMIT商家已经关注有一些时候,看到不少的隔壁朋友们都有分享到,但是这篇还是我第一次分享这个服务商。根据看介绍,DMIT是一家成立于2017年的美国商家,据说是由几位留美学生创立的,数据中心位于香港、伯力G-Core和洛杉矶,主打香港CN2直连云服务器、美国CN2直连云服务器产品。最近看到DMIT商家有对洛杉矶CN2 GIA VPS端口进行了升级,不过价格没有变化,依然是季付28.88美元起。...

Hostinger 限时外贸美国主机活动 低至月12元且赠送1个COM域名

Hostinger 商家我们可能一些新用户不是太熟悉,因为我们很多新人用户都可能较多的直接从云服务器、独立服务器起步的。而Hostinger商家已经有将近十年的历史的商家,曾经主做低价虚拟主机,也是比较有知名度的,那时候也有接触过,不过一直没有过多的使用。这不这么多年过去,Hostinger商家一直比较稳妥的在运营,最近看到这个商家在改版UI后且产品上也在活动策划比较多。目前Hostinger在进...

CloudCone中国春节优惠活动限定指定注册时间年付VPS主机$13.5

CloudCone 商家产品还是比较有特点的,支持随时的删除机器按时间计费模式,类似什么熟悉的Vultr、Linode、DO等服务商,但是也有不足之处就在于机房太少。商家的活动也是经常有的,比如这次中国春节期间商家也是有提供活动,比如有限定指定时间段之前注册的用户可以享受年付优惠VPS主机,比如年付13.5美元。1、CloudCone新年礼物限定款仅限2019年注册优惠购买,活动开始时间:1月31...

java画图板为你推荐
回收站在哪vivo手机的回收站在哪推广方法现在最常用的推广方式有哪几种暴风影音怎么截图如何在暴风影音中截图?网站运营我想成为网站运营的人我该学什么??百度手写百度手写怎么不见了奇虎论坛奇虎论坛最新推荐歌曲列表·linux虚拟机怎么样在Linux下安装虚拟机二层交换机二层交换机是什么意思,三层呢如何清理ie缓存怎么样清理IE缓存?网络虚拟机VMware虚拟机三种网络模式的区别有哪些?
网游服务器租用 美国和欧洲vps 高防dns 阿里云邮箱登陆首页 bandwagonhost 免备案cdn 香港机房托管 gomezpeer 12306抢票攻略 web服务器架设软件 京东商城双十一活动 gg广告 lol台服官网 免费申请个人网站 服务器监测 1元域名 宏讯 中国域名 成都主机托管 西部数码主机 更多