当前位置: 代码迷 >> Java相关 >> 请教一个小问题
  详细解决方案

请教一个小问题

热度:206   发布时间:2006-06-21 23:26:17.0
请教一个小问题

import java.awt.*;
import javax.swing.*;
import java.awt.event.*;
public class TestMouseLine extends JFrame
{
int x,y;
int endX,endY;
public TestMouseLine()
{
Container c=getContentPane();

addMouseListener(new MouseAdapter()
{
public void mousePressed(MouseEvent e)
{
x=e.getX();
y=e.getY();
}
});

addMouseMotionListener(new MouseMotionAdapter()
{
public void mouseDragged(MouseEvent e)
{
endX = e.getX();
endY = e.getY();
repaint();
}
});

addWindowListener(new WindowAdapter()
{
public void windowClosing(WindowEvent e)
{
System.exit(0);
}
});

setSize(400,300);
setLocation(400,300);
show();
}
public void paint(Graphics g)
{
super.paint(g);
g.setColor(Color.red);
g.drawLine(x,y,endX,endY);
}

public static void main(String[] args)
{
new TestMouseLine();
}
}
super.paint(g);这句话是什么意思呢?为什么加了这句话就只能画一条线呢?如果要用鼠标控制画更多的线应该怎么弄呢?


----------------解决方案--------------------------------------------------------
就是缓冲区被冲掉,然后每次paint的时候都重建缓冲区



那我不改了
http://www.bc-cn.net/bbs/dispbbs.asp?boardID=8&ID=73979&page=1
xuyijin已经写给你了

[此贴子已经被作者于2006-6-22 0:00:24编辑过]


----------------解决方案--------------------------------------------------------
  相关解决方案