Brauche Hilfe bei Bildprogramm

Code:
    public void picAdd(File picfile)
    {
        try
        {
            counter++;
            if (counter == 3){ System.out.println("3Bilder hinzugefügt. Neue Seite erstellen"); }
            image = ImageIO.read(picfile);
            // beide Maus-Listener anhängen
            Leinwand.addMouseListener(new ML());
            Leinwand.addMouseMotionListener(new MML());
            Picture.setIcon(new ImageIcon(image.getScaledInstance(image.getWidth(Picture)/2,image.getHeight(Picture)/2,Image.SCALE_FAST))); 
                Leinwand.add(Picture);
            Leinwand.setPreferredSize(new Dimension(800,600));
            this.validate();
        } 
        catch (IOException e) {
            e.printStackTrace();
        }
    }
    
    public void actionPerformed(ActionEvent e)
    {
        if(e.getSource() == AnlegenEintrag){           AlbumAnlegen();        }
        else if(e.getSource() == OeffnenEintrag){      AlbumOeffnen();        }
        else if(e.getSource() == SpeichernEintrag){  AlbumSpeichern();        }
        else if(e.getSource() == beendenEintrag){           beenden();        }
    } 
    
    /** MouseListener */
    class ML extends MouseAdapter
    {
        public void mousePressed(MouseEvent e)
        {

           if (! dragging && e.getButton() == MouseEvent.BUTTON1 && Picture.getBounds().contains(e.getPoint()))
            {
                dragging = true;
                dx = e.getX() - Picture.getX();
                dy = e.getY() - Picture.getY();
            }
            

        }
        
        public void mouseReleased(MouseEvent e)
        {
            // interessiert nur, wenn linke Taste losgelassen wird
            if (dragging && e.getButton() == MouseEvent.BUTTON1)
                dragging = false;
        }
    }

    /** MouseMotionListener */
    class MML extends MouseMotionAdapter
    {
        public void mouseDragged(MouseEvent e)
        {
            // Bild neu positionieren, x- und y-Differenzen beibehalten
            if (dragging)
                Picture.setLocation(e.getX() - dx, e.getY() - dy);
        }
    }

habe folgenden code der den User ein Label (Picture) auf der Leinwand per Maus bewegen lässt. Mein Problem ist nun das ich mehrere Labels habe (eigentlich maximal 3) und alle diese Eigenschaft erhalten sollen, aber natürlich unabhängig voneinander. Wie genau muss das ganze dann aussehen?

MfG ilovehouSe
 
danke schonmal für die bisherigen Hilfen, hat mich schon recht viel weiter gebracht. Sitze nun nur noch vor dem Problem, dass ich die 3 DragLabel die ich nun habe auch noch per Maus vergrößern/kleinern soll, also durch User-Interaktion. Hat da einer ne Idee bzw nen Beispiel wie sowas zusätzlich aussehen könnte?

MfG ilovehouSe
 
Zurück