PDA

Ver la Versión Completa : Creacion de formas


Tauro78
21-11-2006, 12:53:49
hola quisiera saber lo siguiente:

pienso que la aplicacion tendra unas 100 pantallas cuando este terminada, me gustaria saber lo siguiente: es mejor dejar que todas las formas se creen automaticamente (asi no me preocupo de liberarlas, etc) o deberia crearlas y destruirlas explicitamente o talvez dejar que algunas se creen automaticamente y otras no.
Mi duda se debe a que hice una aplicacion de 80 formas y deje que todas se crearan automaticamente, pero me parece que se le hace pesado si la maquina no tiene mucha memoria el cargar todas las pantallas.
De tener que crealas explicitamente como seria el codigo?, se que esto esta en Project-Options-Forms, entonces aqui pongo las que quiero manejar explicitamente.
Desde ya muchas gracias.

dec
21-11-2006, 12:57:34
Hola,

Jesusito de mi vida, cien formularios... desde luego parecen muchos para que se creen "de entrada", porque, ¿van a utilizarse los cien formularios en una sesión de la aplicación? Parecen muchos, desde luego. O al menos a mí me lo parecen.

Yo creo que lo suyo sería que los formularios se crearan cuando fueran necesarios, y se liberaran cuando dejaran de serlo. Esto dependerá de la función de los formularios en cuestión. Por regla general, cuando se muestra un formulario "modalmente" se hace algo así:


var
frm: TMiFormulario;
begin
frm := TMiFormulario.Create(Self);
try
frm.ShowModal;
finally
frm.Free;
end;
end;


O algo como esto, si se precisa el resultado del formulario "modal":


var
frm: TMiFormulario;
begin
frm := TMiFormulario.Create(Self);
try
if frm.ShowModal = mrOk then
begin
// Lo que te sea menester aquí
end;
finally
// Pero, en todo caso
frm.Free;
end;
end;

Neftali [Germán.Estévez]
21-11-2006, 13:26:23
Estoy de acuerdo con David, no crees 100 pantallas al inicio.
Añado que si las abres nomodales, puedes dejar que se liberen automáticamente añadiendo al evento OnClose:


Action := caFree;

Tauro78
21-11-2006, 14:03:43
Gracias por sus rapidas respuestas.