Como implementar un diagramador UML

Les comento que tengo que hacer un programa que me grafique como el estilo de un diagramador uml.
Necesito de sus ideas para saber como implementar este tipo de funcionalidad gráfica...
Les dejo como ejemplo JUDE... Que uno oprime un botón para crear una clase. Y al hacerle nuevamente click en el área de trabajo, me crea el dibujito de la clase.
El punto es que como implemento este dibujito... Y ademas, como hago para que al hacerle click al dibujito este me lo detecte,... Y ademas pueda hacerle lineas de conexión con otro dibujito... Mejor dicho... COMO UN DIAGRAMADO UML... Algo así...
ESa es la idea... Entonces... ¿Cómo hago el dibujito, como es más fácil?... ¿Cómo hago el área de trabajo?, ¿Con qué componente?... No tengo ni idea como hacer toda esa vaina...
Les agradecería... Gracias..
NOTA: Tengo que entregar el programa nada más y nada menos que pra el 4 DE OCTUBRE.

1 respuesta

Respuesta
1
A ver, intentaré echarte un cable aunque, como dices, empiezas a estar justo de tiempo :) Me imagino que te habrán dado clases de soporte para analizar los ficheros java que quieres representar en UML, si no será un poco más complicado :)
La cosa es, para hacer dibujitos la clase que tienes que utilizar es "Canvas"
http://java.sun.com/j2se/1.4.2/docs/api/java/awt/Canvas.html
Que la tendrás que incluir dentro de un entorno gráfico de java, en un objeto "Frame" para definir la ventana
http://java.sun.com/j2se/1.4.2/docs/api/java/awt/Frame.html
y un objeto "Panel" para definir el contenido de la ventana
http://java.sun.com/j2se/1.4.2/docs/api/java/awt/Panel.html
Para hacer los dibujitos pudes utilizar los métodos que te ofrece la clase "Graphics"
http://java.sun.com/j2se/1.4.2/docs/api/java/awt/Graphics.html
Que te permite dibujar líneas, cuadrados, círculos... échale un vistazo al API, los métodos se llaman "drawLine", "drawCircle"...
Y para poder acceder a ese objeto Graphics tienes que utilizar el objeto "Canvas" que te he dicho antes. Los objetos canvas tienen un método llamado "paint" que recibe como parámetro un objeto "Graphics", el que tienes que utilizar. Lo que tendrías que hacer es crearte un objeto que extienda de Canvas, sobreescribir el método "paint", y dentro de él definir qué quieres dibujar. Te recomiendo crear un objeto por cada tipo de dibujo que quieras hacer (una caja de una clase, o una línea para unir dos cajas) y así será más sencillo. Simplemente tendrías que crear ese tipo de objetos dentro de "paint", y listo :)
Sé que es un poco complicado al principio, pero leelo un par de veces y verás como no lo es tanto.
Te dejo un tutorial donde se explica cómo crear ventanas (objetos Frame)
http://java.sun.com/docs/books/tutorial/uiswing/components/frame.html
y un pequeño ejemplo para dibujar:
http://javaalmanac.com/egs/java.awt/DrawBasic.html
Si necesitas más información o te surgen más dudas ya sabes donde localizarme :)

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas