Tema: Formularios
Ver Mensaje Individual
  #5  
Antiguo 08-08-2007
Avatar de dec
dec dec is offline
Moderador
 
Registrado: dic 2004
Ubicación: Alcobendas, Madrid, España
Posts: 13.107
Reputación: 34
dec Tiene un aura espectaculardec Tiene un aura espectacular
Hola,

A mí lo primero que se me viene a la cabeza es declarar un método en los formularios que van a ser mostrados "modalmente". Tal que así:

Código Delphi [-]
interface

type
  TForm2 = class(TForm)
  private
    FCallForm: TCustomForm;
  public
    function ShowModal(callForm: TCustomForm): integer; overload;
  end;

implementation

function TForm2.ShowModal(callForm: TCustomForm): integer;
begin
  FCallForm := callForm;
  result := self.ShowModal();
end;

Con el método se matarían dos pajáros de un tiro, como se ve: se asigna a cierta variable privada una referencia al formulario que llama al método, y se ofrece como resultado de este el resultado del método "ShowModal" original.

Queda de tu cuenta añadir una propiedad pública al formulario, si es que lo ves menester. En todo caso... tal vez no sea muy "elegante" esto que propongo... a ver si alguien se anima con otras soluciones.

Edito: Iba a borrar mi mensaje, porque lo que dicen los compañeros (y que no se me había ocurrido) me parece mucho más digno e interesante. Pero, total, que se vea mi ignorancia, y además, tal vez pueda servir de algo lo que he dicho...
__________________
David Esperalta
www.decsoftutils.com

Última edición por dec fecha: 08-08-2007 a las 15:22:20.
Responder Con Cita