![]() |
[ayuda] detector de ventana
buenas
hola les planteo mi situación estoy creando un projet con 2 form (form1 y form2) ok bueno el objetivo es lograr que al abrir el programa aparezca el form1 este form va a tener solo un label que va a decir (esperando....) cuando el projet detecte la aplicación quiero que desaparezca ese form1 y aparezca el form2 que es el que va a tener las funciones del programa noce no tengo idea de lo que voy ha hacer lo que estoy usando es si alguien meda una idea o otra forma de lograr lo que quiero :) salu2. |
Quisiera que aclararas un poco lo que deseas. Tengo la impresión de que dices una cosa con tus palabras y otra con el pseudo código que has colocado.
Saludos, Chris |
Cita:
es desir al detectar la ventan este codigo hace que aparesca el form2 y desaparesca el form1 y cuando no lo detecta aparece el form1 y desaparece el form2 pero esto es solo una hidea lo que pasa es que con este codigo el timer no permite que se precionar ningun boton es por eso que ago la pregunta |
Tienes 2 tareas a realizar:
(1) Detectar el nuevo programa. (2) Cerrar la ventana actual y abrir la nueva. Para la (1) puedes utilizar el código que has colocado. Si buscas en los foros por FindWindows encontrarás bastantes ejemplos, tanto para buscar por título como por classname. Para el (2) una vez detectado la nueva aplicación basta con que ocultes o cierres el form1 (Close/Hide) y abras el nuevo (Show). |
Cita:
|
Cita:
Y tal vez subir la frecuencia del Timer. Cita:
|
Doy por supuesto que los botones bloqueados se encuentran en Form1. Además, si ya estás mostrando Form1, no es necesario la línea Form1.Show. También doy por supuesto que la frecuencia del Timer debe ser muy corta para dejar colgada la interfaz de la aplicación. En este caso puedes hacer lo que te ha dicho Neftalí. Si aún así no se soluciona el problema o deseas mantener la frecuencia del Timer bien corta, entonces te recomiendo que trabajes con Hilos (Threads) en tu aplicación. Esa es la mejor solución que puedes implementar. Pero es un trabajo que hay que hacerlo con un poco más de cuidado y trabajo.
Saludos! |
Resp
Si es desde tu misma aplicacion.
Form1.Show; //Codigo qu ehace esperar Form1.hide; //muestras tu otra ventana Ahora si lo que quieres es algo como un spalash. Algo asi como cuando delphi esta iniciado. Entonces mira los ejemplos de delphi no recuerdo cuan exactmanete creo que es MATabs o algo asi hay esta todo en una estupides que debes agrgar en el proyecto. |
Resp
Si es desde tu misma aplicacion.
Form1.Show; //Codigo qu ehace esperar Form1.hide; //muestras tu otra ventana Ahora si lo que quieres es algo como un spalash. Algo asi como cuando delphi esta iniciado. Entonces mira los ejemplos de delphi no recuerdo cuan exactmanete creo que es MATabs o algo asi hay esta todo en una estupides que debes agrgar en el proyecto. solo se que es uno de los proyectos de base de datos que la ventana muestraun barquito ao algo por estilo. |
Cita:
si es nesesario el form1.show begin GameWindow := findwindow(nil,'xxxxxx.exe') if GameWindow <> 0 then begin //cuando se detecta la aplicacion acurre que form2.show; //se muesta el form2 form1.hide; //se oculta el form1 end else //cuando detecta que la aplicacion ha cido cerrada form2.hide; //se oculta el form2 form1.show; //se muestra elform1 end;he estado probando el evento activate aunque no e tenido mucho tienpo para trabajar en mi aplicacion a primera vista funciono correctamente bueno apenas pueda sigo con la aplicacion si no me funciona me veran aqui de nuevo :) gracias por su colaboracion espero que me disculpen por averme ausentado tanto tienpo en este post lo que sucede es que me cortaron el internet y no la avia pagado por falta de tienpo xD haaa y si no es mucho abuso les agradeceria que me dejaran algunos ejemplos de otras maneras de detectar una ventana en este momento no necesito esta información pero es bueno tener este conocimiento |
La franja horaria es GMT +2. Ahora son las 23:07:42. |
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