![]() |
![]() |
![]() |
![]() |
![]() |
FTP | ![]() |
![]() |
CCD | ![]() |
![]() |
Buscar | ![]() |
![]() |
Trucos | ![]() |
![]() |
Trabajo | ![]() |
![]() |
Foros | ![]() |
|
Registrarse | FAQ | Miembros | Calendario | Guía de estilo | Temas de Hoy |
![]() |
|
Herramientas | Buscar en Tema | Desplegado |
#1
|
|||
|
|||
Ocultar ventanas
Hola, no se si este hilo deba ir aqui pero este es mi problema: Tengo una ventana en la cual me conecto a una base de datos, una vez que he realizado la conexion puedo ver la ventana principal de mi aplicacion, pero si muevo la ventana con el mouse puedo ver la ventana de la conexion detras, o sea la ventana que se supone que se cierre, he probado con destruirla pero me da error, no se que hacer porque esa ventana es obligatoria y se me ve muy feo que este ahi. Muchas Gracias.
|
#2
|
||||
|
||||
Hay muchas formas de solucinarlo, aunque deberías poner tu código para aconsejarte según la forma en que tú lo haces.
__________________
La otra guía de estilo | Búsquedas avanzadas | Etiquetas para código | Colabora mediante Paypal |
#3
|
||||
|
||||
Melissa_12,
Cita:
Cita:
![]() Nelson. |
#4
|
|||
|
|||
Hola, pues me he demorado un poco en responder pero he probado el enlace que me ha dicho Nelson y no se muy bien donde poner el codigo que viene. O sea, ya he puesto la funcion para poner la forma que quiero como forma principal pero desde donde debo llamar el procedimiento?.
Por ejemplo: tengo un formulario donde el usuario se autentica, si la contrasenna y el usuario son correctos pasa al Form1, pero el formulario de autenticacion sigue quedando detras del Form1. Llame al procedimiento en el boton de Aceptar para validar el usuario y la contraseña, pero cuando voy a cerrar el Form1 me da el siguiente error: "cannot change visible in onshow or onhide" y no tengo la menor idea de que pueda se. Muchas Gracias. |
#5
|
||||
|
||||
Hola Melissa_12.
Si el form es un inicio de seción a la aplicación, revisa estos enlaces: Si se trata de una verificación para permitir o negar el ingreso a determinada acción u otro formulario, podes hacer: Formulario login:
Formulario que llama previamente a frmLogin para permitir (o no) el acceso a determinada acción: Tenes que quitar a frmLogin de: Project -> Options -> Forms -> Auto-create forms. Saludos.
__________________
Daniel Didriksen Guía de estilo - Uso de las etiquetas - La otra guía de estilo .... Última edición por ecfisa fecha: 12-01-2013 a las 21:17:33. |
#6
|
||||
|
||||
Melissa_12,
Cita:
El código anterior establece a FormApp como formulario principal en vez de FormLogin y cierra el formulario de login. Una forma mas estándar de usar un formulario de login es la siguiente: El código anterior llama en el evento OnCreate de Form1 al formulario de login Form2 el cual valida el acceso a la aplicación. Form2 no se encuentra configurado en: Project -> Options -> Forms -> Auto-create forms y por ser de tipo Modal, Form1 no se visualizara hasta que el acceso sea valido, caso contrario finalizara la aplicación. Te anexo un ejemplo de login usando una aplicación MDI, pero la lógica es la misma para aplicaciones SDI. El ejemplo esta disponible en el link: http://terawiki.clubdelphi.com/Delph...load=Login.rar El ejemplo de cambiar el formulario principal del Mensaje 3 esta disponible en el link: http://www.clubdelphi.com/foros/atta...7&d=1353126375 Espero sea útil ![]() Nelson. Última edición por nlsgarcia fecha: 13-01-2013 a las 05:05:53. |
#7
|
|||
|
|||
Hola, disculpen por demorarme tanto en responder pero es que pense que ya habia resuelto el problema, resulta que hoy dando una ultima hojeada vi que la ventana principal sigue haciendo lo mismo.
Voy a dar una idea general: Tengo una ventana de conexion a mi servidor, esta ventana solo se mostrara cuando la conexion no se haya podido efectuar para que el usuario introduzca los datos correctamente, de lo contrario esta venatana sera transparente al usuario. Cuando el usuario no se ha podido conectar con el servidor, para que la ventana no se quede detras del login(que es la proxima ventana que muestro si logro establecer la conexion) hago esto:
Entonces se muestra la ventana de Login correctamente, cuando introduzco el usuario y la contraseña en caso que esten correctos:
Y se queda la ventana del Login detras de la principal, ya he probado con Close pero me da error, he probado con Release y tambien, ya no se que hacer. Muchas Gracias por su tiempo. |
#8
|
||||
|
||||
Cita:
¿ Ya Intentaste con el código sugerido en el mensaje #5 ? Saludos.
__________________
Daniel Didriksen Guía de estilo - Uso de las etiquetas - La otra guía de estilo .... |
#9
|
||||
|
||||
Melissa_12,
Cita:
Te sugiero revisar el Msg #6, en el hay mayor detalle a todo lo comentado y ejemplos que puedes descargar y analizar. Espero sea útil ![]() Nelson. Última edición por nlsgarcia fecha: 25-01-2013 a las 18:18:54. |
#10
|
||||
|
||||
Melissa_12,
Nota Adicional al Msg #9: No puedes efectuar Operaciones con los métodos Close o Release sobre un Formulario que no esta instanciado, en este caso Form1 según tu código del Msg #7, esto provocara un mensaje de Access violation, no obstante el método Free si puede ser utilizado, es por ello que tu código anterior no da error pero tampoco libera el formulario de acceso dado que no es Form1 es Login. Espero sea útil ![]() Nelson. Última edición por nlsgarcia fecha: 25-01-2013 a las 19:49:52. |
#11
|
|||
|
|||
Hola Nelson, muchas gracias por el tiempo que te tomas tratando de ayudarme. Pero es que no logro dar con la solucion.
No entiendo por ejemplo si en el primer formulario que tengo(que es la conexion con la base de datos) se cierra correctamente para dar paso a la de autenticar con el metodo SetAsMainForm, despues cuando quiero que el formulario principal sea el formulario Main y le paso el mismo metodo no lo ve como principal y no me deja cerrar el del login, de verdad que no se. He visto los ejemplos que me has recomendado pero no me sirven porque es que tengo un primer formulario como ya he dicho para establecer la conexion en caso que los datos sean erroneos. Muchas gracias por la ayuda. |
![]() |
|
|
![]() |
||||
Tema | Autor | Foro | Respuestas | Último mensaje |
Ocultar exe. | _F3R_ | API de Windows | 3 | 30-08-2010 08:50:54 |
Ventanas,Ventanas Mdi=Dolor de cabeza ? | IVAND | Varios | 7 | 08-05-2006 17:27:24 |
Ocultar | Nathan | Varios | 2 | 11-03-2004 17:32:14 |
Ocultar ventanas en el escritorio | roman | API de Windows | 5 | 11-02-2004 07:57:44 |
ocultar | botones67 | Varios | 3 | 04-10-2003 15:35:37 |
![]() |
|