Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > Varios
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

Grupo de Teaming del ClubDelphi

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 06-10-2012
Fossy Fossy is offline
Miembro
 
Registrado: feb 2006
Posts: 65
Poder: 19
Fossy Va por buen camino
Pregunta muy tonta

Hola amigos:

Tras años programando acabo de encontrarme algo de lo mas tonto del mundo a lo que no le doy solución ni soy capaz de encontrar nada en google...

Es tan simple como querer poner un Timage (png transparente) encima de un Tpanel, y el Tpanel asociarlo a un TMediaPlayer...

Cuando el Mediaplayer empieza a reproducir el vídeo, el Timage desaparece y no tengo forma humana de ponerlo para que se vea encima. Me da igual si el Timage está dentro del Tpanel o es un objeto de TForm en primer plano..., ya he intentado todas las combinaciones y en el IDE se pone por delante, todo parece genial, pero cuando empieza el vídeo el TPanel ignora todo lo que esté por encima.

¿Alguna solución?.

Gracias!!.
Responder Con Cita
  #2  
Antiguo 06-10-2012
Avatar de Casimiro Notevi
Casimiro Notevi Casimiro Notevi is offline
Moderador
 
Registrado: sep 2004
Ubicación: En algún lugar.
Posts: 32.043
Poder: 10
Casimiro Notevi Tiene un aura espectacularCasimiro Notevi Tiene un aura espectacular
No entiendo bien "la figura", un tmediaplayer sobre un timage. Y el timage está en un panel.
Cuando se reproduce algo en el mediaplayer la imagen desaparece, supongo que es normal puesto que el mediaplayer está encima, ¿no?.
Puede que no lo haya entendido.
Responder Con Cita
  #3  
Antiguo 07-10-2012
Fossy Fossy is offline
Miembro
 
Registrado: feb 2006
Posts: 65
Poder: 19
Fossy Va por buen camino
A ver, lo explico de nuevo y doy otros datos para que me entendáis mejor...

Tengo que poner a reproducir un vídeo en pantalla, me da igual si es con mediaplayer, videograbber o lo que sea (ya he probado con unos cuantos), NO es a pantalla completa, sino en una pequeña porción a modo de "vista previa". Hasta aquí bien, cogemos un TMediaPlayer y un TPanel, el primero es el componente y el segundo la ventana de reproducción (por eso decía lo del TPanel).

Bueno, ya tenemos nuestro vídeo funcionando..., ahora quiero que el usuario vea "faldones" publicitarios a pié de vídeo, ¿cómo lo hago?..., en teoría parece fácil, pues inserto un TImage encima del TPanel y ya está ¿no?..., pues NO!!..., en el IDE se puede poner perfectamente encima, o manejarlo por capas con el "bring to front" y "send to back"..., no hay ningún problema, el problema es que lo pongas como lo pongas, cuando el vídeo se reproduce, todo lo demás es ignorado!!, da igual que pongas encima un TImage o un Label para poner texto..., no hay forma humana de que puedas poner nada encima del vídeo cuando está en reproducción.

He probado de mil maneras distintas.

Si alguien logra poner un reproductor, y encima del vídeo colocar aunque sea un simple Label para poner texto, por favor que me de un poco de auxilio .

Gracias amigos!!.
Responder Con Cita
  #4  
Antiguo 07-10-2012
Avatar de Delphius
[Delphius] Delphius is offline
Miembro Premium
 
Registrado: jul 2004
Ubicación: Salta, Argentina
Posts: 5.582
Poder: 25
Delphius Va camino a la fama
Cita:
Empezado por Fossy Ver Mensaje
A ver, lo explico de nuevo y doy otros datos para que me entendáis mejor...

Tengo que poner a reproducir un vídeo en pantalla, me da igual si es con mediaplayer, videograbber o lo que sea (ya he probado con unos cuantos), NO es a pantalla completa, sino en una pequeña porción a modo de "vista previa". Hasta aquí bien, cogemos un TMediaPlayer y un TPanel, el primero es el componente y el segundo la ventana de reproducción (por eso decía lo del TPanel).

Bueno, ya tenemos nuestro vídeo funcionando..., ahora quiero que el usuario vea "faldones" publicitarios a pié de vídeo, ¿cómo lo hago?..., en teoría parece fácil, pues inserto un TImage encima del TPanel y ya está ¿no?..., pues NO!!..., en el IDE se puede poner perfectamente encima, o manejarlo por capas con el "bring to front" y "send to back"..., no hay ningún problema, el problema es que lo pongas como lo pongas, cuando el vídeo se reproduce, todo lo demás es ignorado!!, da igual que pongas encima un TImage o un Label para poner texto..., no hay forma humana de que puedas poner nada encima del vídeo cuando está en reproducción.

He probado de mil maneras distintas.

Si alguien logra poner un reproductor, y encima del vídeo colocar aunque sea un simple Label para poner texto, por favor que me de un poco de auxilio .

Gracias amigos!!.
Es que eso ya es cosa de como es y fue pensado el funcionamiento del TMediaPlayer, y posiblemente también entre en juego en como interpreta el SO el "redibujado".
No es algo que se pueda solucionar tan simple con un "enviar atrás/adelante"... es una mezcla de diseño de componentes en juego, junto con el SO.

Salvo que exista alguna manera de "capturar" el fotrograma del video, y poder "sumar" la imagen que tu deseas poner a modo de aviso como para generar la imagen a mostrar. Asi como lo pides, no hay algo simple... quizá y sólo quizá existe un componente que extienda la capacidad del TMediaPlayer y haga lo que buscas.
De última no te queda otra que esquivar el problema. En ves de intentar mostrar el aviso sobre el video, muéstralo debajo de éste... o al costado.

Saludos,
__________________
Delphius
[Guia de estilo][Buscar]
Responder Con Cita
  #5  
Antiguo 07-10-2012
Avatar de Casimiro Notevi
Casimiro Notevi Casimiro Notevi is offline
Moderador
 
Registrado: sep 2004
Ubicación: En algún lugar.
Posts: 32.043
Poder: 10
Casimiro Notevi Tiene un aura espectacularCasimiro Notevi Tiene un aura espectacular
Cita:
Empezado por Delphius Ver Mensaje
En ves de intentar mostrar el aviso sobre el video, muéstralo debajo de éste... o al costado.
Y asunto solucionado
Responder Con Cita
  #6  
Antiguo 07-10-2012
Avatar de escafandra
[escafandra] escafandra is offline
Miembro Premium
 
Registrado: nov 2007
Posts: 2.197
Poder: 20
escafandra Tiene un aura espectacularescafandra Tiene un aura espectacular
Cita:
Empezado por Delphius Ver Mensaje
...posiblemente también entre en juego en como interpreta el SO el "redibujado".
No es algo que se pueda solucionar tan simple con un "enviar atrás/adelante"...
Delphius tiene razón. Cualquier ventana con estilo WS_CHILD en nuestro formulario será "Borrada" al superponerse con el vídeo del Panel pero si usamos una ventana sin ese estilo no tendrá ese comportamiento.

1.- Lo mas sencillo es crear un Form nuevo con BorderStyle = bsNone.
2.- Después colocamos un TImage, un TImageList y un Timer. La imagen cambiará a cada golpe de Timer cargándola del TImageList.
3.- Hacemos Form2.Parent:= Form1 siendo Form1 el que tiene el TMediaPlayer.
4.- Ajustamos la posición de Form2
5.- Cuando nos interese hacemos Form2.Show

Form2 se superpondrá encima del vídeo y mostrará las imágenes publicitarias a cada golpe de Timer.


Saludos.
Responder Con Cita
  #7  
Antiguo 08-10-2012
Avatar de escafandra
[escafandra] escafandra is offline
Miembro Premium
 
Registrado: nov 2007
Posts: 2.197
Poder: 20
escafandra Tiene un aura espectacularescafandra Tiene un aura espectacular
Pero si sigues queriendo un TPanel para mostrar tus imágenes también tiene solución.

1.- Diseña tus panels para el TMediaPlayer y otro para las imágenes publicitarias.
2.- En el evento OnCreate de tu formulario pon este código:
Código Delphi [-]
procedure TForm1.FormCreate(Sender: TObject);
begin
   SetWindowLong(Panel2.Handle, GWL_STYLE, WS_POPUP);
   Panel2.Parent:= self;
end;
3.- El resto será un Timer y un TImageList para ir mostrando las imágenes publicitarias.


Saludos.
Responder Con Cita
Respuesta



Normas de Publicación
no Puedes crear nuevos temas
no Puedes responder a temas
no Puedes adjuntar archivos
no Puedes editar tus mensajes

El código vB está habilitado
Las caritas están habilitado
Código [IMG] está habilitado
Código HTML está deshabilitado
Saltar a Foro

Temas Similares
Tema Autor Foro Respuestas Último mensaje
pregunta tal vez tonta android_beat Varios 2 29-08-2005 17:27:26
pregunta tonta Jordy Conexión con bases de datos 10 10-06-2005 20:37:04
Pregunta Tonta Mario1980 Varios 1 30-10-2004 16:36:14
Pregunta tonta Delphos Varios 10 20-01-2004 12:44:44
Pregunta tonta... CFPA86 Varios 3 04-12-2003 19:46:43


La franja horaria es GMT +2. Ahora son las 11:10:14.


Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi
Copyright 1996-2007 Club Delphi