PDA

Ver la Versión Completa : Listar todos los Formularios de mi Apliacion


BuenaOnda
03-01-2007, 23:12:19
Hola amigos...

alguien sabe de que manera puedo obtener los nombres de todos los formularios que posee mi aplicacion...

Muchas gracias...

seoane
04-01-2007, 00:04:47
Prueba con esto:


var
i: integer;
begin
for i:= 0 to Screen.FormCount - 1 do
ShowMessage(Screen.Forms[i].Name);
end;

BuenaOnda
04-01-2007, 14:22:27
eso era.. muchas gracias seoane.. me funciono de maravillas :) :)

BuenaOnda
04-01-2007, 14:29:51
el codigo me funcioo impecalbe, pero solo si los formularios estan creados por la aplicacion a principio, en cambio lo que y necesito es, de alguna manera, rescatar los nombres de los formularios, sin tener que crearlos al principio de mi aplicacon, ya que yo los creo y lo libero de memoria solo cuando es necesario..

IF(frmConfiguracion=NIL)THEN
Application.CreateForm(TfrmConfiguracion,frmConfiguracion);

frmConfiguracion.ShowModal;
frmConfiguracion.Free;
frmConfiguracion:=NIL;

muchas gracias...

Lepe
04-01-2007, 14:50:15
El código funciona correctamente. ¿No será que lo llamas cuando no debes?, Me explico mejor. Ese código que has puesto muestra la ventana con ShowModal, cuando la ventana se cierra, se libera, por tanto ya no está en memoria, y no aparecerá en la rutina que ha puesto Seoane. Para que aparezca, deberás ejecutar el bucle desde el propio frmConfiguracion (¿mediante un botón de prueba?).

Otro detalle que pueda estar pasando: que el nombre del Formulario esté en blanco (muy raro, mucho, pero en fin), sugiero que al código de Seoane, añadas:
ShowMessage('Class '+ Screen.Forms[i].ClassName+ ' Name '+ Screen.Forms[i].Name);

Edito:
frmConfiguracion.Free;
frmConfiguracion:=NIL;

Puedes sustituirlo por : FreeAndNil(frmConfiguracion)



Saludos

BuenaOnda
04-01-2007, 14:52:40
Ok... voy a probar gracias por tu ayuda :D