Ir para conteúdo
  • Cadastre-se

Recommended Posts

Postado

Olá, eu tenho esse código abaixo funcionando perfeitamente no Delphi 2007, mas estou migrando para o Delphi Alexandria, e o mesmo não está mais centralizando, já fiz algumas modificações no form, como por exemplo: Align := alnone; e Anchors : = []; e mesmo assim não funciona, alguém sabe o motivo?

Código:

procedure TdtmSysMsg.AguardeForm(Formulario: TForm; Mensagem: string);
var
  pngAguarde: TPanel;
begin
  FimAguardeForm(Formulario);
  Mensagem := Mensagem + ' ...';
  Screen.Cursor := crSQLWait;
  pngAguarde := TPanel.Create(Formulario);

  with pngAguarde do
  begin
  Align := alNone;
  Width := Length(Mensagem) * 9;
//  Left := (Formulario.Width - Width) div 2;
//  Top := (Formulario.Height - Height) div 2;
  Left := (Formulario.ClientWidth - Width) div 2;
  Top := (Formulario.ClientHeight - Height) div 2;
  Name := 'pngAguarde';
  Parent := formulario;
  Caption := Mensagem;
  Height := 59;
  BorderStyle := bsNone;
  Color := $00DEDCBE;
  Color := clSkyBlue;
  Font.Charset := DEFAULT_CHARSET;
  Font.Color := clWindowText;
  Font.Height := -11;
  Font.Name := 'Tahoma';
  Font.Size := 10;
  Font.Style := [fsBold];
  ParentFont := False;
  ParentColor := False;
  ParentBackground := False;
  Application.ProcessMessages;
  end;
end;

 

eu chamo essa procedure em vários momentos do form, e em nenhuma dela a mesma fica centralizada...

 

  • 1 mês depois ...
  • Consultores
Postado
4 horas atrás, Alex Heinen disse:

Tem uma propriedade chamada Position tenta alterar o valor dela para poMainFormCenter

creio que está falando do form ?

panel não tem essa propriedade.

 

Consultora ACBr Pro

Juliomar Marchetti

Ajude o Projeto ACBr crescer - Seja Pro

discord: juliomar
telegram: juliomar
e-mail: [email protected]
http://www.juliomarmarchetti.com.br

 

MVP_NewLogo_100x100_Transparent-02.png
Projeto ACBr - A maior comunidade Open Source de Automação Comercial do Brasil


Participe de nosso canal no Discord e fique ainda mais próximo da Comunidade !!

  • Consultores
Postado
2 horas atrás, Márcio Antônio disse:

Verdade, tive que calcular na "mão", para ficar centralizado o panel, mas dependendo da tela, ela não fica 100%. Mas depois com mais calma, eu tento de outra forma. Obrigado mesmo assim!

Zoom/Escala tem que cuidar isso 

 

Consultora ACBr Pro

Juliomar Marchetti

Ajude o Projeto ACBr crescer - Seja Pro

discord: juliomar
telegram: juliomar
e-mail: [email protected]
http://www.juliomarmarchetti.com.br

 

MVP_NewLogo_100x100_Transparent-02.png
Projeto ACBr - A maior comunidade Open Source de Automação Comercial do Brasil


Participe de nosso canal no Discord e fique ainda mais próximo da Comunidade !!

Postado
Em 03/03/2026 at 11:30, Márcio Antônio disse:

Eu chamo essa procedure em vários momentos do form, e em nenhuma dela a mesma fica centralizada...

Tente assim:

 

procedure TdtmSysMsg.AguardeForm(Formulario: TForm; Mensagem: string);
var
  pngAguarde: TPanel;
begin

  FimAguardeForm(Formulario);

  Mensagem := Mensagem + ' ...';
  Screen.Cursor := crSQLWait;

  pngAguarde := TPanel.Create(Formulario);
  with pngAguarde do
  begin
    Name := 'pngAguarde';
    Parent := Formulario;

    Align := alNone;
    BorderStyle := bsNone;
    Color := clSkyBlue;

    Font.Charset := DEFAULT_CHARSET;
    Font.Color := clWindowText;
    Font.Name := 'Tahoma';
    Font.Size := 10;
    Font.Style := [fsBold];
    ParentFont := False;
    ParentColor := False;
    ParentBackground := False;

    Caption := Mensagem;

    Height := 59;
    Width := (Length(Mensagem) * 9) + 40;

    Left := (Formulario.ClientWidth - Width) div 2;
    Top := (Formulario.ClientHeight - Height) div 2;

    BringToFront;

    Application.ProcessMessages;
  end;
end;
 

 

Prates, Agnaldo

Crie uma conta ou entre para comentar

Você precisar ser um membro para fazer um comentário

Criar uma conta

Crie uma nova conta em nossa comunidade. É fácil!

Crie uma nova conta

Entrar

Já tem uma conta? Faça o login.

Entrar Agora
×
×
  • Criar Novo...

Informação Importante

Colocamos cookies em seu dispositivo para ajudar a tornar este site melhor. Você pode ajustar suas configurações de cookies, caso contrário, assumiremos que você está bem para continuar.