Fórum Como abrir forms em formato pagecontrol? Um vídeo de exemplo #606792
28/11/2019
0
Olá bom dia a todos, dando continuidade no meu projeto, estou procurando na internet, algum exemplo de como se faz isso, ou se alguém puder me ajudar, dando uma dica. O que preciso que meu software abra os forms igual ao que está neste vídeo, ou seria em pagecontrol ou tab,
Valeu a todos.
https://www.youtube.com/watch?v=WialT0IeDP8
Valeu a todos.
https://www.youtube.com/watch?v=WialT0IeDP8
Júnior Pinheiro
Curtir tópico
+ 0
Responder
Posts
28/11/2019
Emerson Nascimento
coloque no seu form principal um pagecontrol alinhado alClient.
implemente a procedure abaixo no form principal:
Daí, quando você for criar o formulário, poderá fazer de duas formas:
Crie uma rotina para fechar os formulários:
E, onde você for fechar, chame a procedure:
Falta implementar o 'X' na aba da tabsheet.
implemente a procedure abaixo no form principal:
procedure TFormPrincipal.AbreForm(Formulario: TComponentClass; PageControl: TPageControl = nil);
var
TabSheet: TTabSheet;
Form: TComponent;
begin
// cria o formulário
Form := Formulario.Create(Self);
if PageControl <> nil then
begin
TForm(Form).BorderStyle := bsNone; // retira as bordas
// cria a 'pagina'
TabSheet := TTabSheet.Create(Self);
TabSheet.Caption := TForm(Form).Caption;
TabSheet.PageControl := PageControl1;
// exibe o formulário
TForm(Form).Align := alClient;
TForm(Form).Parent := TabSheet;
end;
TForm(Form).Show;
end;Daí, quando você for criar o formulário, poderá fazer de duas formas:
AbreForm(TFormCadastro1, PageControl1); // abre o formulário dentro da pagecontrol AbreForm(TFormCadastro1); // abre o formulário da forma comum
Crie uma rotina para fechar os formulários:
procedure FechaForm(Formulario: TForm);
var
Parente: TWinControl;
begin
Parente := Formulario.Parent;
FreeAndNil(Formulario);
if (Parente <> nil) and (Parente is TTabSheet) then
FreeAndNil(Parente);
end;E, onde você for fechar, chame a procedure:
FechaForm(Self);
Falta implementar o 'X' na aba da tabsheet.
Responder
Gostei + 0
Clique aqui para fazer login e interagir na Comunidade :)