Ver Mensaje Individual
  #13  
Antiguo 02-09-2007
paubar paubar is offline
Registrado
 
Registrado: ago 2007
Posts: 8
Reputación: 0
paubar Va por buen camino
Smile Todo solucionado

Bueno:

1) Use Sleep(1) para dar tiempo a que se creen los controles, no me convence demasiado pero funciona, por otro lado se me habia ocurrido enviar
un SendMessage y esperar a que me conteste, pero no se que mensaje enviar a un TFrame, creo que esa sería la opcion.

2) El segundo problema era solo un error de código, cambie la manera de crear un array de Frame1.
Tab:=TSuiTabSheet.Create(Self);
Tab.PageControl:=Form1.suiPageControl1;
Tab.Tag:=Integer(TFrame1);
Tab.Caption:=RemotoName;
Form1.CreateFrame( Tab as TSuiTabsheet );
Tab.Show;
Sleep(1);
Aqui se crea el TabSheet

Llamo directo al metodo CreateFrameProcedure TForm1.CreateFrame(forTabsheet: TSuiTabSheet);
Var
Frame: TFrame;

begin
Frame := TFrame1.Create(Self);
with Frame do
begin
Parent := Self;
Visible := True;
frame.Parent := forTabsheet;
frame.Align := alClient;
Name := 'FFrames' + IntToStr(pIndex);
inc(pIndex);
end;
pIndex es global

Comentarios:

El usar Sendmessage y posTmessage no obtuve cambio niguno, por lo menos perceptible.Los dos funcionaban igual aunque son distintos métodos.

El error de código era porque desde el evento show se llamaba a createFrame y era que entonces al cambiar de pestaña se colocaba una frame nueva.

Un saludo para todos y haber si podemos encontrar una solución mejor para el pto 1.
Ciao
Responder Con Cita