FTP | CCD | Buscar | Trucos | Trabajo | Foros |
|
Registrarse | FAQ | Miembros | Calendario | Guía de estilo | Buscar | Temas de Hoy | Marcar Foros Como Leídos |
|
Herramientas | Buscar en Tema | Desplegado |
#1
|
|||
|
|||
Crear y Destruir Formularios - Forma Correcta
Hola a Todos...
Capaz esta pregunta ya esta contestada en el foro, la busque pero no encontré... Mi pregunta es la siguiente: Cual es la manera correcta de crear un formulario? Planteo el escenario:
Para Cerrar el formulario , tengo un ToolBar con un TWindowClose. Pero este no asigna Nil a la variable FormX. ¿Lo correcto seria que asigne nil a la variable FormX en el evento destroy? Y Porque en el Create de un Form, la Variable FormX es igual a Nil pero Self no? Cual es la diferencia? Ahora voy a contar porque me surgen estas dudas... Tengo una app con casi 300 formularios. en la mayoria de los formularios, en el create del mismo llamo a un procedimiento que me pinta los componentes de x color. Hasta acá sin problemas. Pero resulta que ahora he tenido que agregar nuevos formularios y se da que aveces abro este form nuevo (FormX) y en el procedimiento que pinta los componentes me arroja un access violation. O se me da que abro un determinado form y luego el FormX y arroja el AV. Llevo mas de una semana tratando de encontrar el porque con estos nuevos formularios se produce el error y no encuentro. Ya cree un proyecto nuevo, probé en otra pc, hice los formularios desde 0... Y nada el error persiste... Entonces empece a ver mas detalladamente y note que (Yo siempre utilice la variable Form, que crea automáticamente el formulario) la primera ves que entra el formulario al procedimiento que pinta FormX = Nil, ahora la segunda vez ( Osea, lo cierro con el botón de cerrar TWindowCloe) y si lo abro de nuevo FormX tiene cosas adentro, no viene con Nil. Puse FormX := Nil en el evento destroy del FormX y el problema se soluciono. Ahora me queda la gran incógnita y es lo que me come la cabeza, de porque el error solo con esos formularios. Llegue a pensar a al pasar algún tamaño de ejecutable o uso de memoria a lo mejor cambia la administración y por eso surge ahora el error.. la verdad no se... Y por eso es que viene mi pregunta... ahora estoy pensando que a lo menor la forma en la que estoy creando y destruyendo los formularios no es la correcta, aunque esto no me responda porque en 299 Formularios no da el error y en el 300 si...(Puse estos mismos formularios en proyectos aun mas grandes y el error no se da)
__________________
Saluda Atte Neeruu!!! :) Última edición por Neeruu fecha: 06-02-2018 a las 22:37:35. |
Herramientas | Buscar en Tema |
Desplegado | |
|
|
Temas Similares | ||||
Tema | Autor | Foro | Respuestas | Último mensaje |
forma de programar no se si es la correcta ? | gulder | MySQL | 4 | 05-04-2016 17:49:51 |
Liberar Tlist de forma correcta | BDWONG | Varios | 3 | 01-11-2014 17:28:46 |
Forma correcta de conectar a la base.. | linuxtin | Conexión con bases de datos | 4 | 19-07-2012 20:30:20 |
Crear formularios de forma dinamica | istradlin | Lazarus, FreePascal, Kylix, etc. | 4 | 06-12-2007 15:30:40 |
Como destruir o liberar una forma | maguib | Varios | 1 | 11-03-2005 19:39:02 |
|