Hallo Leute,
ich sitze gerade an einem Spiel, bei dem am Anfang die Figuren (JLabels/ImageIcons) durch den Spieler auf ein Spielfeld gestellt werden sollen.
die für mich schönste Lösung wäre, wenn man dies durch Drag & Drop realisieren könnte.
Ich würde also den einzelnen Figuren(JLabels) einen MouseListener und MouseMotionListener hinzufügen.
wie geht es von da an weiter?
----------------------------------
mein programm ist im Moment so gegliedert:
Methode mousePressed: wenn linker Button => dragging = true + berechne Absolute Koordinaten:
berechnung der Absoluten Koordinaten:
dx = event.getX() - JLabelname.getX();
dy = e.getY() - JLabelname.getY();
Methode mouseReleased: dragging = false;
Methode mouseDragged: wenn dragging => JLabelname.setLocation(event.getX() - dx, event.getY() - dy);
er dragged zawr ein bisschen rum, aber bei schnelleren Mausbewegungen verliert der Curser das Bild und es gibt ein Flackern.
-------------------------------
wäre euch dankbar, wenn ihr sowas schonmal programmiert habt oder Ahnung von habt, mir ein bisschen unter die Arme greift.
Vielen Dank im Voraus
ich sitze gerade an einem Spiel, bei dem am Anfang die Figuren (JLabels/ImageIcons) durch den Spieler auf ein Spielfeld gestellt werden sollen.
die für mich schönste Lösung wäre, wenn man dies durch Drag & Drop realisieren könnte.
Ich würde also den einzelnen Figuren(JLabels) einen MouseListener und MouseMotionListener hinzufügen.
wie geht es von da an weiter?
----------------------------------
mein programm ist im Moment so gegliedert:
Methode mousePressed: wenn linker Button => dragging = true + berechne Absolute Koordinaten:
berechnung der Absoluten Koordinaten:
dx = event.getX() - JLabelname.getX();
dy = e.getY() - JLabelname.getY();
Methode mouseReleased: dragging = false;
Methode mouseDragged: wenn dragging => JLabelname.setLocation(event.getX() - dx, event.getY() - dy);
er dragged zawr ein bisschen rum, aber bei schnelleren Mausbewegungen verliert der Curser das Bild und es gibt ein Flackern.
-------------------------------
wäre euch dankbar, wenn ihr sowas schonmal programmiert habt oder Ahnung von habt, mir ein bisschen unter die Arme greift.
Vielen Dank im Voraus