Foros del Web » Programación para mayores de 30 ;) » Java »

¿Superponer un Canvas sobre un Vídeo?

Estas en el tema de ¿Superponer un Canvas sobre un Vídeo? en el foro de Java en Foros del Web. ¡Hola a todos! Estoy intentando colocar un Canvas encima de un vídeo para poder dibujar sobre el vídeo, pero el canvas siempre se coloca detrás, ...
  #1 (permalink)  
Antiguo 01/03/2011, 03:24
 
Fecha de Ingreso: agosto-2010
Mensajes: 56
Antigüedad: 14 años, 3 meses
Puntos: 0
Pregunta ¿Superponer un Canvas sobre un Vídeo?

¡Hola a todos! Estoy intentando colocar un Canvas encima de un vídeo para poder dibujar sobre el vídeo, pero el canvas siempre se coloca detrás, de manera que no se ve lo que dibuja. La idea conseguir un efecto de realidad aumentada.

El vídeo consta de un objeto Player y un objeto Component, ambos de Java Media Framework (JMF).

¿Existe algo parecido a un z-index o lo que intento es imposible?

¡Gracias! ^^
  #2 (permalink)  
Antiguo 01/03/2011, 12:14
Avatar de sivadmp  
Fecha de Ingreso: febrero-2011
Ubicación: La Paz - Bolivia
Mensajes: 293
Antigüedad: 13 años, 10 meses
Puntos: 20
Respuesta: ¿Superponer un Canvas sobre un Vídeo?

Hola

lo que puedes hacer es utilizar un layout null, del frame
de este modo sobreponer los dos paneles

Código java:
Ver original
  1. JFrame frame=new JFrame();
  2. frame.setLayout(null);

luego te creas los dos paneles, panel de video y panel de opacidad
y les asignas la misma posicion para que se sobrepongan

Código java:
Ver original
  1. JPanel video=new JPanel();
  2. video.setBounds(10,10,500,500);
  3.  
  4. JPanel sobre=new JPanel();
  5. sobre.setBounds(10,10,500,500);
  6.  
  7. frame.add(video);
  8. frame.add(sobre);

nota. el segundo panel tienes q cambiarle la opacidad para que se vea transparente

saludos

Etiquetas: canvas, jmf, superponer, video
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 03:21.