criação de telas herdadas...........

Delphi

29/01/2007

olá boa tarde!!!

Estou com um probleminha aqui com relação a criação de formlarios no meu projeto....

estou herdando uma tela nova, cheguei ate a deixar a tela pronta, é inclusive uma tela de cadastro de funcionarios...

mas aparece essa mensagem:
nenhum mdi forms é atualmente ativo não pode criar o formulario....
procedure FormCreate(Sender: TObject);
procedure Funcionrios1Click(Sender: TObject);
private
{ Private declarations }
protected
procedure ShowForm(InstanceClass: TComponentClass; var Reference);
public
{ Public declarations }
end;
e desenvolvi essa procedure:

procedure TfrmBancoHoras.ShowForm(InstanceClass: TComponentClass; var Reference);
var
I: Integer;
Achou: Boolean;
Instance: TComponent;
begin
Achou := False;
for I := 0 to (MDIChildCount -1) do
if MDIChildren[I].ClassType = InstanceClass then
begin
Achou := True;
Break;
end;
if Achou then
begin
if TForm(Reference).WindowState = wsMinimized then
TForm(Reference).WindowState := wsNormal;
TForm(Reference).Show;
end
else
begin
Instance := TComponent(InstanceClass.NewInstance);
TComponent(Reference) := Instance;
try
Instance.Create(Self);
except
TComponent(Reference) := nil;
Instance.Destroy;
raise;
end;
if Instance is TForm then
begin
TForm(Instance).HandleNeeded;
end;
end;
end;

mas tbem acabou dando erro de acsses.............


Placido

Placido

Curtidas 0

Respostas

Emerson Nascimento

Emerson Nascimento

29/01/2007

você criou um formulário estilo MDIChild. para funcionar, deve haver um formulário do estilo MDIForm (geralmente a tela principal do sistema)


GOSTEI 0
POSTAR