Fórum Posição da imagem #347623
20/10/2007
0
Na tela principal da minha aplicação, coloquei um panel no centro, e dentro deste o logotipo da empresa. Alterei o estilo da borda do panel para dar um efeito interessante ao logo. Quando executo o sistema, gostaria que ficasse sempre centralizado, não importando o tamanho da tela (se está maximizada ou restaurada). Existe uma forma prática de se fazer isso??
No aguardo.
Abraços,
Rogério
Roger1976
Curtir tópico
+ 0Posts
20/10/2007
Marco Salles
Gostei + 0
21/10/2007
Alexandrej
No evento onResize...
Panel.Left := Round((Self.Width / 2) - (Panel.Width / 2))
Panel.Top := Round((Self.Height....
Mais ou menos assim, fiz de cabeça, pode estar errado...
Porque vc não coloca esse ´efeito´ salvo na imagem e usa um TImage com a propriedade Center = True e o alinhamento = alClient?
Gostei + 0
21/10/2007
Roger1976
Valeu galera!!!
Gostei + 0
21/10/2007
Marco Salles
bom ,
{
$R *.dfm} var kWP,KHP,KWI,KHI:real; procedure TForm1.FormCreate(Sender: TObject); begin KHP:=form1.Height/panel1.Height; KWP:=form1.Width/panel1.Width; KHI:=panel1.Width/image1.Width; KWI:=panel1.Width/image1.Width; end;
procedure TForm1.FormResize(Sender: TObject); begin postmessage(handle,wm_user,0,0); end;
procedure TForm1.wmuser(var msg: tmessage); begin panel1.Height:=trunc(form1.Height/KHP); panel1.Width:=trunc(form1.Width/KHP); image1.Height:=trunc(panel1.Height/KHI); image1.Width:=trunc(panel1.Width/KWI); panel1.Left:=(form1.Width - panel1.Width)div 2; image1.Left:=(panel1.Width - image1.Width) div 2; end;
Gostei + 0
Clique aqui para fazer login e interagir na Comunidade :)