drawpane.java~3~

来自「这是各类实用工具的源码100例」· JAVA~3~ 代码 · 共 67 行

JAVA~3~
67
字号
package jimagemovedemo;import javax.swing.JPanel;import java.awt.event.MouseEvent;import java.awt.event.MouseMotionListener;import java.awt.*;import java.awt.image.*;class DrawPane extends JPanel implements MouseMotionListener {  private int x,y;  BufferedImage bimage;  public DrawPane(){    this.setBackground(Color.white);    this.addMouseMotionListener(this);    Image image = this.getToolkit().getImage(ClassLoader.getSystemResource("images/image.jpg"));    MediaTracker mt = new MediaTracker(this);    mt.addImage(image,1);    try{      mt.waitForAll();    }catch(Exception err){      err.printStackTrace();    }    if (image.getWidth(this) == -1){      System.out.println("Could not get the image");      System.exit(-1);    }    bimage = new BufferedImage(image.getWidth(this),image.getHeight(this),                               BufferedImage.TYPE_INT_ARGB);    Graphics2D g2D = bimage.createGraphics();    g2D.drawImage(image,0,0,this);  }  public void paintComponent(Graphics g){    super.paintComponent(g);    Graphics2D g2D = (Graphics2D)g;    g2D.drawImage(this.bimage,this.x,this.y,this);  }  public void mouseDragged(MouseEvent e) {    /**@todo Implement this java.awt.event.MouseMotionListener method*/    //throw new java.lang.UnsupportedOperationException("Method mouseDragged() not yet implemented.");    this.x = e.getX();    this.y = e.getY();    repaint();  }  public void mouseMoved(MouseEvent e) {    /**@todo Implement this java.awt.event.MouseMotionListener method*/    //throw new java.lang.UnsupportedOperationException("Method mouseMoved() not yet implemented.");  }}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?