Ver Mensaje Individual
  #9  
Antiguo 23-02-2007
Avatar de DarKraZY
DarKraZY DarKraZY is offline
Miembro
 
Registrado: ago 2003
Posts: 460
Reputación: 21
DarKraZY Va por buen camino
La opción correcta sería como te comentó Roman, mediante propiedades:

Código Delphi [-]
TForm1 = class(TForm);
{...}
public
  DataSetForm: TIBDataSet read FDataSetForm write FDataSetForm;
end;


Procedure TForm1.ButtonClick(Sender: TObject);
begin
  Form2 := TForm2.Create(Self);
  Form2.DataSetForm := IBDataSet1;
end;
 

Procedure TForm2.ButtonClick(Sender: TObject);
var
  Aux : Integer;
begin
  Aux := DataSetForm.FieldByName('CAMPO1').Value;
  // Creo un nuevo Form3 pásandole como parámetro no Self, sino lo
  // siguiente :
  Form3 := TForm3.Create(Owner); // esta conversión de TForm1(Owner) creo que no es necesaria.
  Form3.DataSetForm := DataSetForm;
end;

 
Procedure TForm3.ButtonClick(Sender: TObject);
var
  Aux : Integer;
begin
  // Aquí quiero acceder al IBDataSet1 contenido en Form1
  Aux := DataSetForm.FieldByName('CAMPO1').Value;
end;


Si sólo vas a necesitar un campo de la tabla sería mejor pasar sólo el valor del campo y no el dataset.

saludos!!
Responder Con Cita