Club Builder - Foros de discusión Club Builder
Foro de C++Builder en español
 
 FAQFAQ   BuscarBuscar   MiembrosMiembros   Grupos de UsuariosGrupos de Usuarios   RegistrarseRegistrarse 
 PerfilPerfil   Entra para ver tus mensajes privadosEntra para ver tus mensajes privados   EntrarEntrar 

Hacer que un form se vea poco a poco (solución)
Ir a página 1, 2  Siguiente
 
Publicar nuevo tema   Responder al tema    Foros de discusión -> Consultas
Ver tema anterior :: Ver tema siguiente  
Autor Mensaje
Mensaje    Asunto: Hacer que un form se vea poco a poco (solución) Responder citando

Hola a todos, no se si la respuesta está ya en el foro pero me lo he encontrado de casualidad.

El siguiente código (el ejemplo es el primero que se me ha ocurrido, en este caso con un form) hace que apretando un botón, el form1 aparezca poco a poco y no de repente:

Código:

Form1->Hide();
AnimateWindow (Form1->Handle,2000,AW_BLEND);
Form1->Show();


yo he puesto 2 seg, si es más ya sabéis 4000, 6000....

Bueno espero que os sirva a todos, y a imaginaros a lo que podéis aplicarlo.

Saludos
Volver arriba
Ver perfil de usuario Enviar mensaje privado
Mensaje    Asunto: Responder citando

Llévalo a la zona de trucios, ¡hombre!
_________________
Un saludo

Necesitamos tu ayuda: Envía AI al 27595 (Coste 1,20 euros + IVA)
Volver arriba
Ver perfil de usuario Enviar mensaje privado Enviar email
Mensaje    Asunto: Responder citando

Vale, lo acabo de poner.
Saludos
Volver arriba
Ver perfil de usuario Enviar mensaje privado
Mensaje    Asunto: Responder citando

Hola.
He aplicado la función AnimateWindow a un splash form de mi programa.
Éste form es simplemente un TImage. La cuestion es que solo funciona con el form y no con la imagen. Me aparece poco a poco el form (rectángulo gris) y cuando acaba sale la imagen (porque le tengo puesto un repaint).
Alguna solucion??
Salu2.
Volver arriba
Ver perfil de usuario Enviar mensaje privado
Mensaje    Asunto: Responder citando

Asegurate de poner el AnimateWindow en el evento OnShow del form del splash.
Creo que asi no tendras problemas.

Un saludo!
Volver arriba
Mensaje    Asunto: Responder citando

Gracias Xpto hace tiempo pregunté por algo similar y estube buscando por el foro, pero no dí con el.

Por cierto, me sucede lo mismo que a Niteman, me aparece poco a poco el form pero no lo el TImage que tiene dentro. Por cierto si pongo llamo al metodo Hide desde el metodo OnShow, me salta una excepción.

Ciao.
Volver arriba
Ver perfil de usuario Enviar mensaje privado Visitar sitio web del autor MSN Messenger
Mensaje    Asunto: Responder citando

Alguien que pueda echarnos una mano, para terminar esta historia ?

Gracias.
Volver arriba
Ver perfil de usuario Enviar mensaje privado Visitar sitio web del autor MSN Messenger
Mensaje    Asunto: Responder citando

Cita:
...me sucede lo mismo que a Niteman, me aparece poco a poco el form pero no lo el TImage que tiene dentro...

Además de añadir AnimateWindow en el evento OnShow como se ha dicho mas arriba, añade lo siguiente en la parte privada de la clase del form por ejemplo:
Código:
void __fastcall WmEraseBkgnd(TWMEraseBkgnd& msg)
{
    BitBlt(msg.DC, 0, 0, ClientWidth, ClientHeight,
           Image1->Canvas->Handle, 0, 0, SRCCOPY);
}
BEGIN_MESSAGE_MAP
    MESSAGE_HANDLER(WM_ERASEBKGND, TWMEraseBkgnd, WmEraseBkgnd)
END_MESSAGE_MAP(TForm)


Puedes bajarte si prefieres el ejemplo para BCB4, 5 y 6, desde:
http://cppbuilder.hypermart.net/AnimateWindow_TImage.zip
 
 
Volver arriba
Ver perfil de usuario Enviar mensaje privado
Mensaje    Asunto: Responder citando

Ahhhhhhhhiiiiiiiiiiiiii _Leo que hariamos sin tí. Gracias funciona estupendamente. Como no podría ser de otra manera viniendo de tí.

Ciao y mil gracias.
Volver arriba
Ver perfil de usuario Enviar mensaje privado Visitar sitio web del autor MSN Messenger
Mensaje    Asunto: Responder citando

_Leo, el enlace no funciona, gracias..
_________________
Cool
Volver arriba
Ver perfil de usuario Enviar mensaje privado Enviar email MSN Messenger
Mensaje    Asunto: Responder citando

http://www.telefonica.net/web/ljfg/temp/AnimateWindow_TImage.zip
Volver arriba
Ver perfil de usuario Enviar mensaje privado
Mensaje    Asunto: Responder citando

Gracias!!
_________________
Cool
Volver arriba
Ver perfil de usuario Enviar mensaje privado Enviar email MSN Messenger
Mensaje    Asunto: Responder citando

Hola, he probado este método en un form de presentación que contiene solo una imagen y funciona muy bien, el problema es que en la propiedad position de mi form tengo poScreenCenter pero no puedo hacer que la animación del form salga también centrado; es decir, si mi form en tiempo de diseño esta colocado a la izquierda de la pantalla, ahi es donde se empieza a mostrar y hasta que termina de mostrarse se pasa al centro de la pantalla. ¿Como lo puedo remediar?

Gracias!!
Volver arriba
Ver perfil de usuario Enviar mensaje privado Enviar email MSN Messenger
Mensaje    Asunto: Responder citando

añade en el OnCreate()

Código:

Form1->Top=Screen->Height/2-(Form1->Height/2);
Form1->Left=Screen->Width/2-(Form1->Widht/2);


Creo que es asi y creo que esta bien escrito Very Happy
_________________
Los problemas mas dificiles tienen las soluciones mas sencillas
Volver arriba
Ver perfil de usuario Enviar mensaje privado Enviar email Visitar sitio web del autor MSN Messenger
Mensaje    Asunto: Responder citando

Es exactamente lo que necesitaba, Gracias!!!!
Volver arriba
Ver perfil de usuario Enviar mensaje privado Enviar email MSN Messenger
Mostrar mensajes de anteriores:   
Cambiar a:  
No puedes publicar temas nuevos en este foro
No puedes responder a temas en este foro
No puedes editar tus mensajes en este foro
No puedes borrar tus mensajes en este foro
No puedes votar en las encuestas de este foro


Hosting WordPress Indedmedia desde 3,99 €
© 2002–2026 Club Builder · Funciona con phpBB.