Error al llamar a un form hija
Tengo un pequeño problema, me explico, tengo un form1 principal con los clasicos edit de "usuario", "pasword", etc... desde form1 llamo a otro form2 con la propiedad fsMDIForm que me va a servir de formulario padre, y dentro de este tengo un boton para llamar a una ventana hija, con el siguiente codigo:
Cuando pulso el boton para abrir el form3 me aparece el siguiente error: Message : Cannot create form. No MDI forms are currently active. Alguien me puede decir que tengo mal. un saludo. espero haber publicado el hilo en el lugar correcto. |
Tal vez esto te Sirva ..
Saludos !! |
Diego666; te agradezco tu respuesta, pero no acabo de entenderla.
el Form2 (formulario Padre) me lo crea correctamente, el problema lo tengo cuando desde el Form2 intento crear el Form3 que es un formulario hija. |
|
Gracias ecfisa, el tema me ha quedado claro.
[FONT='Calibri','sans-serif']Entonces según esto, el Form1 siempre tiene que ser el “padre”; ahora bien, ¿cómo puedo hacer para que antes de visualizar el Form1 (padre), me abra el Form2 (para pedir el usuario) y si es correcto entonces pasar a visualizar el Form1 y si no es correcto cerrar la aplicación?[/font] |
Bueno, creo que he encontrado la solución.
He puesto en el evento “onShow” (antes de que el formulario se haga visible) del formulario padre la apertura del formulario “Usuario”. |
Hola Thoma.
Me alegro que lo hayas resuelto, otra posibilidad es poner en tu poyecto: Donde MDIForm es tu form MDI principal y FrmPassword es el form donde se ingresa usuario y contraseña. Saludos. |
Gracias ecfisa, he probado de la manera que me indicas y me funciona a la perfección. Pero mi duda ahora es la siguiente: ¿como puedo controlar si tengo que abrir la ventana padre o no?.
Me explico, si en la ventana "passord" se pulsa "Esc" o si cerramos la ventana sin introducir datos no se deberia de abri el Formulario padre. Luego otra duda que me surge, es ¿donde declaro las variables para que me sirvan para todos los furmularios? |
Hola Thoma.
Cita:
Por ejemplo devolver mrOk solo sí ingresa correctamente el usuario y contraseña. Revisá todos los valores que puede tomar TModalResult en la ayuda de Delphi. Saludos. |
a ver... no sé porque me ocurre lo siguiente. Si pulso la tecla "Enter" en cualquier edit, automáticamente me abre el form Padre sin pasar por el siguiente edit, pero si pulso la tecla "Tab" si toma el foco el siguiente edit. De hecho con el "enter" no pasa ni por el "onExit"
¿? con lo cual no puedo controlar el ModalResult. |
Hola Thoma.
¿ Tenés asignado algún código en los eventos OnKeyPress u OnKeyDown de los Edits o el Form ? Saludos. |
He probado con esto,
pero ya te digo no pasa ni por keyPress |
Hola Thoma.
Si estas usando TBitBtns para aceptar y cancelar, poné el valor False en su propiedad Default. Debido a que esta propiedad determina si el manejador del evento OnClick del TBitBtn se activa o no al presionar la tecla enter Saludos. |
Gracias edfica, tu ayuda me ha servido de mucho.
un saludo. |
Exacto!
Cita:
Saludos, |
La franja horaria es GMT +2. Ahora son las 20:29:50. |
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