No se me activa el formulario principal

Hola amigo. Necesito de tu ayuda, ¿resulta qué he generado mi aplicación en ejecutable pero cuando ejecuto el formulario principal se abre pero no esta activo tengo que hacer un click en el para activarlo que puede ser?
1

1 Respuesta

147.800 pts. Desarrollador con 10 años de experiencia en el area de...
Perdón la demora, vuelvo de vacaciones, bueno, seguramente estas usando un formulario de nivel superior y has escondido el screen de fox, alguna vez he hecho un truco para solucionar esto pero no lo estoy encontrando, pero si la memoria no me falla aquella vez no había escondido el screen inmediatamente, sino 5 segundos después de haberse iniciado el formulario principal, utilizando un timer, en el evento timer le puse
_screen.hide
Creo que así solucione, pero seguiré buscando esto, pero es normal estecomportamiento cuando le das protagonismo a un form antes del screen.
Hola Amigo.
Te musetro como hice mi prg no se ei esta bien o donde esta el problema.
SET TALK OFF
set centur on
set escape off
set safe off
set hours to 24
set clock on
set bell off
set delete on
set date to french
set notify off
set status bar off
CLEAR
CLOSE ALL
CLEAR ALL
PUBLIC Ejecutable
ejecutable=.f.
SET EXCLUSIVE OFF
_screen.visible=.f.
DO FORM ingresousuario
READ events
IF ejecutable
CLOSE ALL
RELEASE ALL extended
CLEAR
CLEAR ALL
QUIT
ELSE
CLOSE ALL
RELEASE ALL extended
CLEAR
CLEAR ALL
SET SYSMENU TO default
Endif
¿Y cuál es el problema?, por que por defecto no debe estar activo el form, ese es el comportamiento normal cuando el screen está invisible, ¿lo qué quieres es algún truco que active el form?, ¿Qué hay del ejemplo que te dí?
Coloque el comando del ejemplo tuyo y hace lo mismo no se activa. ¿Sera qué tengo que no es modal?
¿Pero agregaste el Timer? , dentro del form? ¿Para qué se ejecute pasado por ejemplo 5 segundos?
Si puse el timer en el formulario y coloque en el intervalo un valor de 5 y en el evento timer del control timer coloque el comando _screen.hide
Y no me responde sigue sin activarse es decir lo abre pero no esta activo, tengo que hacer click sobre el para activarlo.
¿Pero pasado los 5 segundos desaparece el screen?, ¿Cuánto le pusiste al timer? 5 o 5000?, por que el valor es en milisegundos
Amigo, disculpa la demora no tenia servicio de internet, Le puse 5 ahora pruebo colocándole 5000
Ok me avisas como te va
Amigo lo probé y me sigue sin activarse. Ahora te pregunto. ¿el _screen.hide es para sacar el formulario principal de fox?
Es para esconder la pantalla de fox, el screen es la pantalla de fox que engloba todos los form que no sean de nivel superior, con eso lo pones invisible.
Amigo, el formulario de fox si se cierra y abre el formulario principal con el menu que he confeccionado pero no esta activo debo hacer click para activar el mismo y el menu
Si, pero primero debe abrirse el formulario, pasado 5 segundos debe desaparecer el _screen.
Hola amigo, si ahorfa eso lo hace abre el formulario y se cierra el screen de fox pero mi formulario esta abierto y no activo. Me esta pasando en dos aplicaciones que hice.
sera que el modo del form lo coloco mal?
No, no esta mal lo que haces, cuando usas form de nivel superior escondiendo el _screen este es el comportamiento normal, tal como te explique al principio, así funciona, lo que intentamos hacer es activar el form mediante trucos tal como te indique, no se porque no funciona, yo tengo un ejemplo así
He tenido casos en los que no han funcionado en diferentes ambientes de trabajo, prueba también lo siguiente, luego de esconder el screen maximiza tu form así.
thisform.windowstate = 2
Esto a mi me funciono en win xp sp2, también experimente con el comando mouse click que simula hacer click en alguna posición de la pantalla, por ej.
MOUSE CLICK AT 371,4
Hace click en esa posición, como ves es cuestión de experimentar, pero te reitero que no esta mal, esa es la forma normal de comportamiento.
Amigo tienes razón maximizado el formulario si se activa, lo que voy a probar es con tu comando de que haga click en una posición del form.
Mil disculpas y muchísimas gracias.

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas