Ver Mensaje Individual
  #4  
Antiguo 30-06-2012
Avatar de ecfisa
ecfisa ecfisa is offline
Moderador
 
Registrado: dic 2005
Ubicación: Tres Arroyos, Argentina
Posts: 10.508
Reputación: 38
ecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to behold
Hola jersonjn.

Agregando algo más a lo que te comenta el amigo escafandra, si en Form2 tenes declarado un procedimiento(no método) en la sección de interface, tendrías que poder llamarlo sin problemas en forma dirécta desde Form1:

Form1:
Código Delphi [-]
procedure TForm1.Button1Click(Sender: TObject);
begin
 if not Assigned(Form2) then 
   Form2:= TForm2.Create(Self);
 Form2.Show;   // Ojo con ShowModal
 Procedimiento; // <- llamada directa al procedimiento
end;

Form2:
Código Delphi [-]
unit Unit2;

interface

uses
    ...
type
  TForm2 = class(TForm)
  ...
  end;

  procedure Procedimiento;

...
El comentario sobre ShowModal es por que la línea que invoca al procedimiento en Form1, no se ejecutará hasta que se cierre Form2.

Y si además llegaras a tener en Form2 algo como
Código Delphi [-]
...
procedure TForm2.FormDestroy(Sender: TObject);
begin
  FreeAndNil(Form2);
end;
con seguridad obtendrás una excepción.

Saludos.
__________________
Daniel Didriksen

Guía de estilo - Uso de las etiquetas - La otra guía de estilo ....

Última edición por ecfisa fecha: 30-06-2012 a las 01:07:37. Razón: corregir identación
Responder Con Cita