Procedure com TypeCast
Oi tenho a seguinte procedimento:
Porém isto será usado várias vezes, então quero criar uma procedure
fiz:
Porém da o seguinte erro:
também tentei usando:
Erro:
Algém tem alguma dica?
with TForm2.Create(nil) do begin BorderStyle := bsNone; Align := alClient; // Sim, Align serve para alguma coisa em forms! Parent := TabSheet1; (Parent as TTabSheet).Caption := Caption; Show; end;
Porém isto será usado várias vezes, então quero criar uma procedure
fiz:
Procedure AbrirfrmIn(Vform:Tcomponent; frmpai:Tform; local:Tcomponent); begin with (Vform as Tform).Create(frmPai) do begin BorderStyle := bssingle; Bordericons:= []; FormStyle:= fsNormal; Align := alClient; Parent := local; show; end; end;
Porém da o seguinte erro:
[Pascal Error] UnitFuncao.pas(67): E2382 Cannot call constructors using instance variables
também tentei usando:
Procedure AbrirfrmIn(Vform:TcomponentClass <-Aqui mudou; frmpai:Tform; local:Tcomponent);
Erro:
[Pascal Error] UnitFuncao.pas(67): E2015 Operator not applicable to this operand type
Algém tem alguma dica?
Sistemald
Curtidas 0
Respostas
Sistemald
23/02/2006
Galera consegui.
na verdade eu não precisa fazer um typecast, e sim saber a classe.
o resultado final é esse:
Com esta procedure eu crio um form de outro componente.
na verdade eu não precisa fazer um typecast, e sim saber a classe.
o resultado final é esse:
Procedure AbrirfrmIn(Vform:TFormClass; frmpai:Tform; local:TwinControl); begin with Vform.Create(frmPai) do begin BorderStyle := bssingle; Bordericons:= []; FormStyle:= fsNormal; Align := alClient; Parent := local; show; end; end;
Com esta procedure eu crio um form de outro componente.
GOSTEI 0