Oppure

Loading
01/07/12 9:21
bububs
Ciao a tutti vorrei che mi spiegaste anche con qualche esempio come si possa rendere una immagine trascinabile in un jpanel :k:
aaa
16/08/12 13:08
fraioveio
Ciao...
Intanto l'immagine la disegni o è un Component?
aaa
16/08/12 14:26
bububs
ciao :) la disegno :)
aaa
16/08/12 14:50
fraioveio
Ok prova a fare:
public class MioPanel extends JPanel {
    public Point immP = new Point(0, 0), mpp;
    public BufferedImage imm = ....;

    public MioPanel() {
        addMouseMotionListener(new MouseMotionListener() {
            @Override
            public void mouseDragged(MouseEvent e) {
                if(mmp != null) {
                    immP = new Point(e.getX() - mpp.x, e.getY() - mpp.y);
                    repaint();
                }
            }
            
            @Override
            public void mouseMoved(MouseEvent e) {}
        });
        
        addMouseListener(new MouseListener() {
            @Override
            public void mousePressed(MouseEvent e) {
                if(new Rectangle(immP.x, immP.y, imm.getWidth(), imm.getHeight().contains(e.getX(), e.getY())) {
                    mpp = new Point(e.getX() - immP.x, e.getY() - immP.y);
                }
            }
            
            @Override
            public void mouseReleased(MouseEvent e) {
                mpp = null;
            }
            
            /*  Altri metodi astratti da inserire */
        });
    }
    
    @Override
    public void paint(Graphics g) {
        g.drawImage(imm, immP.x, immP.y, this);
    }
}


Spero che funzioni! Non so perchè non l'ho provato :k:
aaa
05/09/12 21:21
bububs
scusa il ritardo della risposta ma ho avuto problemi 8-|
grazie mille :k:
aaa