Como exibir o conteúdo de um formulário em um painel?

21/04/2013

1

Olha eu aqui de novo, Galera.
Boa tarde!

Eu quero que os componentes de um formulário seja exibido dentro de um painel. Já fiz isso usando um FormPai e Filho, mas não deu o resultado que espero. Veja o que quero:
- Quero que o Form2 seja exibido dentro do painel(Panel1) que coloquie dentro do Form1. E ao abrir o Form3 o Form2 seja fechado dando lugar ao formulário aberto(Form3).
- Ah, que tudo isso aconteça sem a barra de título do formulário exibido.

Como posso fazer isso? Tem como?
Responder

Posts

21/04/2013

Joel Rodrigues

Tente o seguinte:
procedure TForm1.Button1Click(Sender: TObject);
begin
  Form2 := TForm2.Create(nil);
Form2.BorderStyle := bsNone;
  Form2.Parent := Panel1;
  Form2.Show;
end;
Responder
Olá, Joel!

Sua dica em partes deu certo. Obrigado.
Mas eu preciso que, por exemplo, o Form2 seja fechado se o Form3 for aberto, ou vice-versa.

Eu arrisque colocando "Close" para fechar o formulário no final do código que você me enviou, conforme abaixo. E mais uma vez deu certo, porém percebi que, ao clicar por engano no botão que chama o Form2 fez com que outro Form2 fosse aberto um ao lado do outro. E o pior é que esse que foi aberto ao lado não venha a fechar.

O que pode estar ocorrendo?

Form3 := TForm3.Create(nil);
Form3.BorderStyle := bsNone;
Form3.Parent := Panel1;
Form3.Show;
Form2.Close;

Responder
×
+1 DevUP
Acesso diário, +1 DevUP
Parabéns, você está investindo na sua carreira