Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > OOP
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

Grupo de Teaming del ClubDelphi

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 30-12-2005
Avatar de dandia28
dandia28 dandia28 is offline
Miembro
 
Registrado: dic 2005
Ubicación: Uruguay
Posts: 39
Poder: 0
dandia28 Va por buen camino
creación de forms dinámica

Hola:

cual es el problema que si quiero acceder a las propiedades de un formulario desde otro .pas me da violación de acceso si lo hago en forma dinámica, pero no si lo hago de la forma tradicional es decir con autocreate forms. El tema es la gestión de recursos que no la quiero perder.
Estoy usando el siguiente procedimiento para crear los forms:

Código Delphi [-]
procedure MostrarForm(AClass: TFormClass;ATag: integer);
begin
with AClass.Create(Application) do
try
Tag := ATag;
ShowModal;
finally
Free;
end;
end;

Saludos, Daniel

Última edición por dec fecha: 30-12-2005 a las 16:02:57.
Responder Con Cita
  #2  
Antiguo 30-12-2005
Avatar de dec
dec dec is offline
Moderador
 
Registrado: dic 2004
Ubicación: Alcobendas, Madrid, España
Posts: 13.107
Poder: 34
dec Tiene un aura espectaculardec Tiene un aura espectacular
Hola,

¿Las propiedades a que tratas de acceder realmente existen en la clase "TFormClass"? A veces queremos acceder a un formulario, por ejemplo, "frmEdicion", mediante una clase del tipo "TForm"... y eso no va bien, claro está. ¿Es la clase "TFormClass" el tipo de formulario que precisamente esperas que sea?
__________________
David Esperalta
www.decsoftutils.com
Responder Con Cita
  #3  
Antiguo 30-12-2005
Avatar de dandia28
dandia28 dandia28 is offline
Miembro
 
Registrado: dic 2005
Ubicación: Uruguay
Posts: 39
Poder: 0
dandia28 Va por buen camino
lo solucione así, lo pongo por las dudas, no es lo mejor del mundo pero...anda

Código Delphi [-]
procedure TDM.MostrarForm(AClass: TFormClass;ATag: integer);
{Parametro "ATAG" de tipo entero: al valor de ATag lo estamos asignando
a la propiedad TAG del nuevo formulario }
begin
     F:=Application.FindComponent(Copy(AClass.ClassName,2,255))as TForm;
     Application.CreateForm(AClass,F);
     with f do
     try
        Tag := ATag;
        ShowModal;
     finally
        Free;
     end;
end;

Última edición por dec fecha: 30-12-2005 a las 17:36:30.
Responder Con Cita
Respuesta



Normas de Publicación
no Puedes crear nuevos temas
no Puedes responder a temas
no Puedes adjuntar archivos
no Puedes editar tus mensajes

El código vB está habilitado
Las caritas están habilitado
Código [IMG] está habilitado
Código HTML está deshabilitado
Saltar a Foro


La franja horaria es GMT +2. Ahora son las 19:07:43.


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
Copyright 1996-2007 Club Delphi