sábado, 13 de julio de 2013

Mini Paint en Java

Mini Paint en Java

Hola amigos hoy les enseñare como programar un mini Paint basico en java utilizando Netbeans 7.2.1 hasta el momento puede hacer lineas circulos, elipses, cuadros, rectangulos tambien cuenta con una opcion de trazo libre

Pasos:

Creamos nuestro proyecto



Ahora extendemos nuestra clase Paint con JFrame
y declaramos las siguientes variables


Creamos el  constructor de nuestra clase e inicializamos nuestras variables



hasta ahora solo hemos inicializado nuestra variables ahora crearemos una nueva clase llamada Lienzo y para que utilizaremos esta clase pues dicha clase sera la encargada de mostrar lo que estemos dibujando a su vez sera quien escuchara las acciones de nuestro mouse para ello extenderemos nuestra clase Lienzo con la clase Canvas e implementaremos MouseListener, MouseMotionListener.


Ahora crearemos nuestro constructor el cual recibirá como parámetro el objeto Paint

E implementamos los siguientes métodos los cuales se encargan de manejar las distintas acciones del mouse y los ultimos 3 métodos son paint() seria nuestra funcion que dibujaria los distintos trazos en nuestro lienzo, update() actualizaria nuestros trazos sin borrar los anteriores y por ultimo nuevoColor() tomaria el nuevo color a utilizar




Ahora crearemos 4 nuevas clases las cuales estaran encargadas de manejar las acciones de algunos componentes como los radiobuttons, el boton limpiar y los slider estos ultimos se utilizaran en las opciones de circulo-elipse o cuadro-rectagulo dependiendo de los valores que les demos asi seran las formas a mostrar

Clase ManejadorBotonLimpiar


Clase ManejadorRadioButton


Clase SelectorAlto


Clase SelectorAncho



Si logran apreciar las clases de SelectorAlto y SelectorAncho son iguales la unica diferencia es la variable ancho y alto respectivamente nos vamos a nuestra clase Lienzo y añadimos las acciones correspondientes dentro del constructor de esta manera.



Ahora lo que falta es terminar de darle las respectivas acciones a los elementos de la clase Paint y dentro de nuestro constructor

Acciones a los radioButtons solo añadimos:
rbColores[i].addActionListener(new ManejadorRadioButton(this));  de esta manera:


Accion del boton dibujar 


Accion del boton cambiar color al presionar dicho boton se mostrara un JColorShooser (un seleccionador de color)


Accion del comboBox


Accion del boton Salir


al final de nuestro constructor colocamos lo siguiente

La primera linea hace que nuestra ventana se muestre de forma expandida.
Segunda es para establecer la decoracion.
Tercera linea definimos que estilo queremos para nuestra venana.
Cuarta linea definimos la accion del boton cerrar de nuestra ventana.
Quinta linea establecemos que no se pueda cambiar el tamaño de nuestra ventana.



Puedes descargar todo el proyecto desde aqui.


16 comentarios :

  1. ni el rectángulo ni el circulo me sirven :/

    ResponderEliminar
    Respuestas
    1. Si lo siento se me olvidó decir que para poder hacer uso del cuadrado / rectangulo y el circulo /elipse primero debes de dar click en el area de dibujo para que se activen los sliders

      Eliminar
  2. Respuestas
    1. Para poder descargar el proyecto al final de la publicacion hay un apartado que dice lo siguente: "Puedes descargar todo el proyecto desde aqui." en la palabra aqui esta el enlace para poder descargarlo

      Eliminar
  3. Hay algun metodo para poder seleccionar una figura ya hecha dentro del panel de dibujo?

    ResponderEliminar
    Respuestas
    1. creo puedes hacerlo con la import java.awt.Graphics2D y utilizando java.awt.geom.Point2D pero tendrias que crear un objeto de la figura el cual contendria los puntos para dibujarla aun no lo he probado pero es lo unico que se me ocurre por el momento

      Eliminar
  4. Respuestas
    1. Si es porque el archivo .rar es el proyecto del Mini Paint el cual contiene el codigo fuente para crear el ejecutable, pero dentro de la carpeta dist esta el ejecutable para probar su funcionamiento...

      Eliminar
  5. podrías subir el video de como funciona tu paint, eso seria ilustrativo.
    para la descarga....no funciona.....

    ResponderEliminar
  6. Perdon ya lo descargue.....y corri el paint.jar. Gracias

    ResponderEliminar
  7. ME PUEDES PSAR EL CODIGO PORFA ISE CLICK PARA DESCARGAR Y ME SALE ERROR

    ResponderEliminar
    Respuestas
    1. El enlace funciona correctamente, posiblemente sea que utilices algún bloqueador de publicidad y sea lo que te genere el error

      Eliminar
  8. uhm como se podria guardar la imagen creada por el usuario?

    ResponderEliminar
  9. me puedes ayudar a que las figuras puedan rellenarse del color de las mismas?

    ResponderEliminar