Márcio Antônio Postado 3 Março Postado 3 Março 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...
Alex Heinen Postado 29 Abril Postado 29 Abril Tem uma propriedade chamada Position tenta alterar o valor dela para poMainFormCenter
Consultores Juliomar Marchetti Postado 29 Abril Consultores Postado 29 Abril 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. Juliomar Marchetti Ajude o Projeto ACBr crescer - Seja Pro discord: juliomar telegram: juliomar e-mail: [email protected] http://www.juliomarmarchetti.com.br 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 !!
Márcio Antônio Postado 30 Abril Autor Postado 30 Abril 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!
Consultores Juliomar Marchetti Postado 30 Abril Consultores Postado 30 Abril 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 Juliomar Marchetti Ajude o Projeto ACBr crescer - Seja Pro discord: juliomar telegram: juliomar e-mail: [email protected] http://www.juliomarmarchetti.com.br 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 !!
Agnaldo Prates Postado 30 Abril Postado 30 Abril 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
Recommended Posts
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 contaEntrar
Já tem uma conta? Faça o login.
Entrar Agora