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写的画图板保存图片是怎么实现的

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



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



把文件读入数级组中。



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



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

云俄罗斯VPSJusthost俄罗斯VPS云服务器justg:JustHost、RuVDS、JustG等俄罗斯vps主机

俄罗斯vps云服务器商家推荐!俄罗斯VPS,也叫毛子主机(毛子vps),因为俄罗斯离中国大陆比较近,所以俄罗斯VPS的延迟会比较低,国内用户也不少,例如新西伯利亚机房和莫斯科机房都是比较热门的俄罗斯机房。这里为大家整理推荐一些好用的俄罗斯VPS云服务器,这里主要推荐这三家:justhost、ruvds、justg等俄罗斯vps主机,方便大家对比购买适合自己的俄罗斯VPS。一、俄罗斯VPS介绍俄罗斯...

819云(240元)香港CN2 日本CN2 物理机 E5 16G 1T 20M 3IP

819云是我们的老熟人了,服务器一直都是稳定为主,老板人也很好,这次给大家带来了新活动,十分给力 香港CN2 日本CN2 物理机 E5 16G 1T 20M 3IP 240元0官方网站:https://www.819yun.com/ 特惠专员Q:442379204套餐介绍套餐CPU内存硬盘带宽IP价格香港CN2 (特价)E5 随机分配16G1T 机械20M3IP240元/月日本CN2 (...

DiyVM:50元/月起-双核,2G内存,50G硬盘,香港/日本/洛杉矶机房

DiyVM是一家比较低调的国人主机商,成立于2009年,提供VPS主机和独立服务器租用等产品,其中VPS基于XEN(HVM)架构,数据中心包括香港沙田、美国洛杉矶和日本大阪等,CN2或者直连线路,支持异地备份与自定义镜像,可提供内网IP。本月商家最高提供5折优惠码,优惠后香港沙田CN2线路VPS最低2GB内存套餐每月仅50元起。香港(CN2)VPSCPU:2cores内存:2GB硬盘:50GB/R...

java画图板为你推荐
1433端口怎么去看1433端口不兼容vivo手机和软件不兼容怎么办?彩信中心联通手机的彩信中心如何设置?godaddy通过什么网址可以查godaddy的域名信息雅虎天盾高手进来看看我该怎么办 新装的ie8 内存使用率达到100%了人人逛街人人都喜欢逛街吗iphone6上市时间苹果6什么时候出来php购物车php session实现购物车的原理声母是什么22个声母是什么域名库域名赎回期过了多长时间可以注册
快速域名备案 备案域名出售 百度云100as rackspace iis安装教程 已备案删除域名 刀片式服务器 秒杀汇 cn3 美国在线代理服务器 服务器合租 购买国外空间 韩国代理ip 中国域名 贵阳电信 cdn网站加速 阵亡将士纪念日 睿云 广东服务器托管 网站防护 更多