Posição da imagem
Saudações!!!
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
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
Curtidas 0
Respostas
Marco Salles
20/10/2007
programando o evento OnResize do Form não da não ?????
GOSTEI 0
Alexandrej
20/10/2007
Existe uma forma prática de se fazer isso??
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
Roger1976
20/10/2007
Amigos, muito obrigado pelas dicas. Na propriedade do panel que contém a imagem, eu alterei as opções da propriedade anchors para false. Assim, quando redimensiono a tela, a imagem fica sempre no meio. Acho que ficaria melhor se o tamanho do panel com a imagem redimensionasse automaticamente ao alterar o tamanho da tela. Como sugerido por vocês, deve-se programar no evento onresize do form principal, mas eu ainda não sei como fazê-lo. Fiz o teste sugerido pelo Alexandre, pensei até que pelo código pudesse redimensionar automaticamente, mas não deu certo.
Valeu galera!!!
Valeu galera!!!
GOSTEI 0
Marco Salles
20/10/2007
Acho que ficaria melhor se o tamanho do panel com a imagem redimensionasse automaticamente ao alterar o tamanho da tela.
bom ,
private
{ Private declarations }
procedure wmuser(var msg:tmessage);message wm_user;
{
$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