实现画笔功能 鼠标按住不放在容器里面移动,会有画笔的效果,画出图案,请问高手这个程序该如何实现,我重写了鼠标监听器的MousePressed()方法,还是无法实现。 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 以前写过一个类似的,楼主试试看吧import java.awt.Graphics;import java.awt.Point;import java.awt.event.MouseAdapter;import java.awt.event.MouseEvent;import java.awt.event.MouseMotionAdapter;import java.util.Vector;import javax.swing.JFrame;public class Paint extends JFrame{ Vector v = new Vector(); Vector vec = new Vector(); public void paint(Graphics g) { int[] x, y; for (int j = 0; j < vec.size(); j++) { x = new int[((Vector) vec.get(j)).size()]; y = new int[((Vector) vec.get(j)).size()]; for (int i = 0; i < ((Vector) vec.get(j)).size(); ++i) { Point p = (Point) ((Vector) vec.get(j)).get(i); x[i] = p.x; y[i] = p.y; } g.drawPolyline(x, y, ((Vector) vec.get(j)).size()); } } public void init() { vec.add(v); addMouseMotionListener(new MouseMotionAdapter() { public void mouseDragged(MouseEvent e1) { Point p = e1.getPoint(); v.add(p); repaint(); } } ); addMouseListener(new MouseAdapter() { public void mouseReleased(MouseEvent e2) { v = new Vector(); vec.add(v); } } ); } public static void main(String[] args) { Paint pa = new Paint(); pa.setSize(500,500); pa.setVisible(true); pa.init(); }} http://blog.csdn.net/kao331431214/archive/2008/12/20/3566464.aspx可以去参考下 java 实现 在线升级 功能 和 本地升级功能 java 分页传参 救命呀? 为什么在windows上运行没有问题 ,在linux 下就报错呢 ? ServerSocket实现的聊天程序如何多人聊天? 从此以后每天装JDK30次! applet通过servlet访问数据库! 用java写好了一个应用程序,请问如何使它成为可执行程序,而不是class文件。 用jdk对一个包内的java文件联编成class文件,怎么弄? 问:jboss+tomcat,能接受最大多少请求量? Linux & Java jni 问题 帮帮忙吧 我实在是不会做啊】
import java.awt.Point;
import java.awt.event.MouseAdapter;
import java.awt.event.MouseEvent;
import java.awt.event.MouseMotionAdapter;
import java.util.Vector;
import javax.swing.JFrame;public class Paint extends JFrame
{
Vector v = new Vector();
Vector vec = new Vector();
public void paint(Graphics g)
{
int[] x, y;
for (int j = 0;
j < vec.size();
j++)
{
x = new int[((Vector) vec.get(j)).size()];
y = new int[((Vector) vec.get(j)).size()];
for (int i = 0;
i < ((Vector) vec.get(j)).size();
++i)
{
Point p = (Point) ((Vector) vec.get(j)).get(i);
x[i] = p.x;
y[i] = p.y;
}
g.drawPolyline(x, y, ((Vector) vec.get(j)).size());
}
}
public void init()
{
vec.add(v);
addMouseMotionListener(new MouseMotionAdapter()
{
public void mouseDragged(MouseEvent e1)
{
Point p = e1.getPoint();
v.add(p);
repaint();
}
}
);
addMouseListener(new MouseAdapter()
{
public void mouseReleased(MouseEvent e2)
{
v = new Vector();
vec.add(v);
}
}
);
}
public static void main(String[] args)
{
Paint pa = new Paint();
pa.setSize(500,500);
pa.setVisible(true);
pa.init();
}
}