Ao vasculhar pela Unit dos dialogos "Vcl.Dialogs", encontrei uma função interessante que cria a caixa de dialogo e retorna um TForm, e assim me foi permitido posicionar no centro do form PAI.
Função: CreateMessageDialog
Estou compartilhando aqui com vocês.
unit uCustomMessage; interface uses Vcl.Dialogs, Vcl.Forms, System.SysUtils; const mbOK = [mbOK]; type TCustomMessage = class public class procedure ShowCustomDlg(const Msg: string; DlgType: TMsgDlgType; Buttons: TMsgDlgButtons); end; implementation { TFrmMessage } class procedure TCustomMessage.ShowCustomDlg(const Msg: string; DlgType: TMsgDlgType; Buttons: TMsgDlgButtons); var FCustomMessage :TForm; begin FCustomMessage := CreateMessageDialog(Msg, DlgType, Buttons); try FCustomMessage.Position := poMainFormCenter; FCustomMessage.ShowModal; finally FreeAndNil(FCustomMessage); end; end; end.
Exemplo de uso:
TCustomMessage.ShowCustomDlg('Sua mensagem aqui', mtError, mbOK);
ou
TCustomMessage.ShowCustomDlg('Sua mensagem aqui', mtInformation, mbOK)
e etc.
Nenhum comentário:
Postar um comentário