Fórum Como centralizar um Formulário(Form2) dentro de um Painel(Panel3) no Delphi? #441119
26/04/2013
0
Eu pretendo exibir um formulário(Form2) no centro de um Painel(Panel3).
Eu estou usando o Delphi 5.
No link abaixo se tem a ideia do que pretendo:
http://img837.imageshack.us/img837/3459/imagemtimecard.jpg
Tudo que está na cor preto é o painel e o que está no centro é o formulário.
Isso que pretendo é possível?
Renildo Antonio
Curtir tópico
+ 0Posts
26/04/2013
Joel Rodrigues
Gostei + 0
26/04/2013
Joel Rodrigues
form.Left := Round((panel.Width - form.Width)/2); form.Top := Round((panel.Height - form.Height)/2);
Gostei + 0
26/04/2013
Renildo Antonio
Respondendo suas perguntas.
- Já sabe como inserir o form no painel? Sim.
- A dificuldade está só no posicionamento? Sim. Era bem aqui mesmo.
Sua dica foi ótima. Fiz assim e deu certo. Veja:
procedure TForm1.FuncionariosClick(Sender: TObject);
begin
Form2 := TForm2.Create(nil);
Form2.BorderStyle := bsNone;
Form2.Parent := Panel3;
Form2.Show;
form2.Left := Round((panel3.Width - form2.Width)/2);
form2.Top := Round((panel3.Height - form2.Height)/2);
end;
Mais uma vez muito obrigado.
Gostei + 0
26/04/2013
Joel Rodrigues
Então, neste caso, vou marcar o tópico como Concluído para que outras pessoas possam consulta-lo futuramente.
Abraço.
Gostei + 0
07/07/2013
Marco Arend
Então, neste caso, vou marcar o tópico como Concluído para que outras pessoas possam consulta-lo futuramente.
Abraço.
opção generica;
function TUnMyObjects.FormTDIPanel(InstanceClass: TComponentClass;
var Reference; Painel: TPanel): Boolean;
var
Instance: TComponent;
Form: String;
MyCursor: TCursor;
Campo: String;
begin
Result := False;
Form := InstanceClass.ClassName;
MyCursor := Screen.Cursor;
Screen.Cursor := crHourGlass;
try
Instance := TComponent(InstanceClass.NewInstance);
TComponent(Reference) := Instance;
try
Instance.Create(nil);
//
Result := True;
except
TComponent(Reference) := nil;
raise;
end;
with TForm(Reference) do
begin
{
Campo := 'Edit1';
if (FindComponent(Campo) as TEdit) <> nil then
TEdit(FindComponent(Campo) as TEdit).Text := 'Jurubeba';
}
TForm(Reference).BorderStyle := bsNone;
TForm(Reference).Parent := Painel;
TForm(Reference).Show;
TForm(Reference).Align := alClient;
end;
Screen.Cursor := MyCursor;
finally
Screen.Cursor := MyCursor;
end;
end;
Como usar:
FormTDIPanel(TForm2, Form2, Panel3);
Gostei + 0
Clique aqui para fazer login e interagir na Comunidade :)