Agradecido por la contestación, te pongo parte del código que puede ser aclarativo para que te hagas una idea.
Código Delphi
[-]
type
TfrmBrowser = class(TForm)
...
pnlReceptor: TPanel; ...
private
m_Padre : TComponent;
m_Conexion : TSQLConnection;
m_Datos : TDataSource;
m_FormIncrustado: TComponent; m_stTextoInformativo: String;
m_idRegistro : Integer;
...
procedure IncrustarDialogo;
procedure LiberarDialogo;
procedure SetFormularioIncrustado (const Valor: TComponent);
...
property Formulario : TComponent Read m_FormIncrustado Write SetFormularioIncrustado;
constructor Create(Owner: TComponent; aDialogo: TComponent); reintroduce; overload;
destructor Destroy; reintroduce; overload;
end;
procedure AbrirDialogo(pVentanaPadre: TComponent;
aTextoInfo : String;
aDialogo: TComponent;
aIdRegistro: Integer);
Código Delphi
[-]
TfrmEmpresas = class(TForm)
Label2: TLabel;
edtEmpresa: TRzEdit;
Label3: TLabel;
edtDireccion: TRzEdit;
Label4: TLabel;
edtCodigoPostal: TRzEdit;
Label5: TLabel;
edtCorreoElectronico: TRzEdit;
Label6: TLabel;
edtFax: TRzEdit;
Label7: TLabel;
edtTelefonos: TRzEdit;
Label8: TLabel;
edtContacto: TRzEdit;
private
procedure SetEmpresa (const Value : String);
procedure SetDireccion (const Value : String);
procedure SetCodigoPostal (const Value : String);
procedure SetCorreoElectronico (const Value : String);
procedure SetFax (const Value : String);
procedure SetTelefonos (const Value : String);
procedure SetContacto (const Value : String);
function GetEmpresa : String;
function GetDireccion : String;
function GetCodigoPostal : String;
function GetCorreoElectronico : String;
function GetFax : String;
function GetTelefonos : String;
function GetContacto : String;
public
published
property Empresa : String Read GetEmpresa Write SetEmpresa;
property Direccion : String Read GetDireccion Write SetDireccion;
property CodigoPostal : String Read GetCodigoPostal Write SetCodigoPostal;
property CorreoElectronico : String Read GetCorreoElectronico Write SetCorreoElectronico;
property Fax : String Read GetFax Write SetFax;
property Telefonos : String Read GetTelefonos Write SetTelefonos;
property Contacto : String Read GetContacto Write SetContacto;
end;
La clase TfrmEmpresas que es la que quiero incrustar, siempre será diferente, por lo que no es posible hacer una herencia, ya que los campos que contiene no coinciden en la mayoría de los casos.
Y lo de published no funciona pues debes indicarle de alguna forma que esa clase tiene esos métodos pues como puedes observar el form está siendo tratado como si fuera un TComponent.
Saludos desde Canarias