我想问下,怎样加载一个图片并在图片上画线?
我是想实现跟踪其它机子的鼠标位置显示在自己的机子上,鼠标的实时变化坐标我已经获得,但不知道怎么加载一张图片,在图片上根据鼠标坐标的位置划个十字线.但不知道怎么实现,画线是不是一定要在CANVAS上画啊,可CANVAS又不能设背景图片,该怎么实现啊,有没有谁知道请帮我解决下,急.能给示例代码最好
我是想实现跟踪其它机子的鼠标位置显示在自己的机子上,鼠标的实时变化坐标我已经获得,但不知道怎么加载一张图片,在图片上根据鼠标坐标的位置划个十字线.但不知道怎么实现,画线是不是一定要在CANVAS上画啊,可CANVAS又不能设背景图片,该怎么实现啊,有没有谁知道请帮我解决下,急.能给示例代码最好
<applet code="你的applte程序的class" width=320 height=220>
在JSP上加载图片
<param name="imgName" value="lines.jpg">
import java.awt.Image;
import java.awt.event.MouseEvent;import javax.swing.JFrame;
import javax.swing.JPanel;
import javax.swing.event.MouseInputListener;
class ImagePanel extends JPanel implements MouseInputListener
{
private Image img;
private int x = 0,y = 0;
public ImagePanel(Image img)
{
this.img = img;
addMouseListener(this);
}
public void paint(Graphics g)
{
g.drawImage(img,0,0,null);
if(x != 0 && y != 0)
{
g.drawLine(x-5,y,x+5,y);
g.drawLine(x,y-5,x,y+5);
}
}
public void drawLine(int x,int y)
{
this.x = x;
this.y = y;
repaint();
} public void mouseClicked(MouseEvent e) {
int x = e.getPoint().x;
int y = e.getPoint().y;
drawLine(x,y);
} public void mousePressed(MouseEvent e) {
} public void mouseReleased(MouseEvent e) {
} public void mouseEntered(MouseEvent e) {
} public void mouseExited(MouseEvent e) {
} public void mouseDragged(MouseEvent e) {
} public void mouseMoved(MouseEvent e) { }
}
public class ImageLineTest extends JFrame {
ImagePanel p = null;
public void drawLine(int x,int y)
{
p.drawLine(x,y);
}
public void init()
{
setSize(200,100);
setDefaultCloseOperation(EXIT_ON_CLOSE);
Image img = getToolkit().getImage("c:\\mao.jpg");
p = new ImagePanel(img);
this.getContentPane().add(p);
show();
}
public static void main(String[] arg) throws Exception
{
ImageLineTest test = new ImageLineTest();
test.init();
}
}
这样就可以了,运行以后点击某个地方就会出现一个十字线