Java - Como hago para colocar una imagen en java?

   
Vista:

Como hago para colocar una imagen en java?

Publicado por rich (2 intervenciones) el 27/10/2014 16:28:20
Necesito ayuda con esto, quiero agregar una imagen png con un canal alfa dentro de un panel, y que al seleccionarla pueda moverlo pero solo haciendo clic en la parte que no es alfa, es decir, si por ejemplo yo tengo la imagen de un circulo yo pueda moverlo unicamente si le hago clic al circulo y no al borde rectangular que por defecto limita al jpanel o la imagen.
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

Como hago para colocar una imagen en java?

Publicado por Tom (914 intervenciones) el 27/10/2014 16:52:43
La forma más segura es que pases tu png a un BufferedImage.
Cuando hagas click en el control que contenga la imagen, puedes consultar el color contenido en el Raster asociado para examinar su valor de alpha.
Esto tendría el problema de que podría detectarte pixels transparentes dentro de la imagen ...

Otra opción es que utilices "shaped windows", pero creo que no es lo que necesitas:

http://docs.oracle.com/javase/tutorial/uiswing/misc/trans_shaped_windows.html#shaped

Pero la mejor opción es que te pases a Java8 y uses javaFX ...
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

Como hago para colocar una imagen en java?

Publicado por rich (2 intervenciones) el 28/10/2014 02:07:58
Gracias por la respuesta. Lo que yo quiero hacer es por ejemplo, en una ventana tener varias imagenes png que se las pueda mover arrastrandolas, en algunos casos puede haber una imagen superpuesta a otra, el problemas es que si yo quiero seleccionar la que esta debajo no me va a dejar por que me va a detectar que seleccione la de arriba debido a que la toma a las partes transparentes como parte del objeto, debido a la forma rectangular del borde. Como podria hacer para que el borde se adapte al contorno de la imagen tomando como esta la zona donde se inicia la transparencia? entiendo que con BufferedImage esto no seria posible, pero con shaped windows?, en caso de que me pase a fx que es lo que podria hacer para logra esto que quiero?
desde ya muchas gracias.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar