Possible Duplicate:
how to drag object
I need to draw some UML components (classes, packages etc) using Java 2D and then be able to drag them around. Is there a way to do this? I mean, to make a shape "draggable"?
Possible Duplicate:
how to drag object
I need to draw some UML components (classes, packages etc) using Java 2D and then be able to drag them around. Is there a way to do this? I mean, to make a shape "draggable"?
You can only add MouseListener to a (J)Component. All Java2D stuff is painted on the component. If you manage all shapes in a List you can search for the correct shape under the mouse courser, move it and repaint the component.
Are you forced to swing?
If not you might have look at draw2d which is a java library that works on a SWT canvas. You can find some examples of draw2d here.
JHotDraw
was designed as "a Java GUI framework for technical and structured Graphics." The linked JHotDraw Pattern Language: JHotDraw Domain Overview illustrates how to customize drawing editors. The sampleorg.jhotdraw.samples.draw.Main
is a reasonable starting point, andJModeller
is a simple UML editor built using the framework.