Caixa de mensagens colorida

Que tal uma caixa de mensagens um pouco mais editada? Podemos especificar uma message dialog através de CreateMessageDialog


extern PACKAGE Forms::TForm* __fastcall CreateMessageDialog
                        (const System::AnsiString Msg,
                             TMsgDlgType DlgType, TMsgDlgButtons Buttons);

CreateMessageDialog retorna uma caixa de diálogos do tipo especificado pelo parâmetro DlgType

mbYes

Um botão com "Yes" na face

mbNo

Um botão com "No" na face

mbOK

Um botão com "OK" na face

mbCancel

Um botão com "Cancel" na face

mbAbort

Um botão com "Abort" na face

mbRetry

Um botão com "Retry" na face

mbIgnore

Um botão com "Ignore" na face

mbAll

Um botão com "All" na face

mbNoToAll

Um botão com "No to All" na face

mbYesToAll

Um botão com "Yes to All" na face

mbHelp

Um botão com "Help" na face

e com o botão indicado no parâmetro Buttons.

mtWarning

A caixa de mensagens contém o símbolo de um ponto de exclamação amarelo.

mtError

A caixa de mensagens contém um sinal vermelho de stop (um X).

mtInformation

A caixa de mensagens contém um "i" azul.

mtConfirmation

A caixa de mensagens contém um ponto de interrogação azul.

mtCustom

A caixa de mensagens não contém bitmap. O Caption da caixa de mensagens é o nome do executável.

//---------------------------------------------------------------------------
#include <vcl.h>
#pragma hdrstop

#include "Unit1.h"
//---------------------------------------------------------------------------
#pragma package(smart_init)
#pragma resource "*.dfm
"
TForm1 *Form1;
//---------------------------------------------------------------------------
void MinhaShowMsg(String msg)
{
  TForm *ShowMsg = CreateMessageDialog(msg,mtError,TMsgDlgButtons()<< mbAbort);
  ShowMsg->Caption = "ERRO DE EXECUÇÂO..." ;
  ShowMsg->Color = clYellow;
  ShowMsg->Font->Color = clRed;
  ShowMsg->Font->Style = TFontStyles()<<fsBold<<fsItalic;
  ShowMsg->Font->Name = "Courier New";
  ShowMsg->Font->Size = 9 ;
  ShowMsg->ShowModal();
  delete ShowMsg;
  ShowMsg = NULL;
}
//---------------------------------------------------------------------------

__fastcall TForm1::TForm1(TComponent* Owner)
        : TForm(Owner)
{
}
//---------------------------------------------------------------------------

void __fastcall TForm1::Button1Click(TObject *Sender)
{
  MinhaShowMsg("Erro durante execução...
Reinicie o computador...");
}
//---------------------------------------------------------------------------