Skip to main content
All docs
V24.2

dxCreateMessageDialog(string,TMsgDlgType,TMsgDlgButtons,TdxMessageDialogHyperlinkClickDelegate,TdxMessageDialogShowHyperlinkHintDelegate) Method

Creates a message dialog box form with the specified settings.

Declaration

function dxCreateMessageDialog(const AMessage: string; ADialogType: TMsgDlgType; AButtons: TMsgDlgButtons; const AHyperlinkClickProc: TdxMessageDialogHyperlinkClickDelegate = nil; const AShowHyperlinkHintProc: TdxMessageDialogShowHyperlinkHintDelegate = nil): TdxMessageDialogForm;

Parameters

Name Type Description
AMessage string

Message dialog box content. The AMessage parameter value initializes the created form’s Message property.

The AMessage parameter supports a set of BBCode-inspired tags that allow you to format message box content. Refer to the Remarks section for the full list of supported formatting tags.

ADialogType TMsgDlgType

A message dialog box type that determines the predefined caption, system icon, and sound of the message dialog box.

AButtons TMsgDlgButtons

A button type. Use this parameter to specify the button that has focus when the message box appears.

AHyperlinkClickProc TdxMessageDialogHyperlinkClickDelegate

Optional. Specifies a procedure that handles a click on a hyperlink within the displayed message. The AHyperlinkClickProc parameter value initializes the HyperlinkClickProc property of the created message dialog box form.

You can define a click handler procedure to identify the clicked hyperlink and prevent certain links from being activated.

Tip

Refer to the TdxMessageDialogHyperlinkClickDelegate procedural type description for detailed information and a code example.

AShowHyperlinkHintProc TdxMessageDialogShowHyperlinkHintDelegate

Optional. Specifies a procedure that handles a hyperlink hint display event. The AShowHyperlinkHintProc parameter value initializes the ShowHyperlinkHintProc property of the created message dialog box form.

You can define a hyperlink hint handler procedure to change the predefined hint message (the hyperlink target URI) depending on certain conditions in your application.

Tip

Refer to the TdxMessageDialogShowHyperlinkHintDelegate procedural type description for detailed information and a code example.

Returns

Type Description
TdxMessageDialogForm

The created message dialog box form.

Remarks

You can call the dxCreateMessageDialog function instead of the TdxMessageDialogForm constructor. The created message dialog box has the mdsMessageDlg style.

VCL Editors Library: A Message Dialog Box Example

Supported BBCode-Inspired Markup Tags

Text Formatting Attribute Message Text with Tags Example
Bold '[B]DevExpress[/B]' VCL Editors Library: A Bold Font Attribute Example
Italic '[I]DevExpress[/I]' VCL Editors Library: An Italic Font Attribute Example
Underscore '[U]DevExpress[/U]' VCL Editors Library: An Underscore Font Attribute Example
Strikeout '[S]DevExpress[/S]' VCL Editors Library: A Strikeout Font Attribute Example
Subscript 'Dev[Sub]Express[/Sub]' VCL Editors Library: A Subscript Font Attribute Example
Superscript 'Dev[Sup]Express[/Sup]' VCL Editors Library: A Superscript Font Attribute Example
Custom Font 'Dev[U][Font=Consolas][Size=12]Express[/U][/Font][/Size]' VCL Editors Library: A Custom Font Settings Example
Color '[Color=#E67E22]Dev[/Color][Color=Gray]Express[/Color]' VCL Editors Library: A Color Font Attribute Example
Background Color '[BackColor=Orange]DevExpress[/BackColor]' VCL Editors Library: A Background Color Font Attribute Example
Hyperlink '[URL=http://www.devexpress.com/]DevExpress[/URL]' VCL Editors Library: A Hyperlink Example
No Parse '[NOPARSE][B]DevExpress[/B][/NOPARSE]' VCL Editors Library: A "No Parse" Example

Code Example: Create a Message Box with Custom Button Captions

The following code example calls the dxCreateMessageDialog function to create a message box with three buttons and customizes their captions:

uses dxMessageDialog;
// ...
var
  ADialog: TdxMessageDialogForm;
  AMessage: string;
begin
  AMessage := 'One or more margins are set outside the printable area of the page.' + #13#10 +
    'Click the [B]Fix[/B] button to increase these margins.';
  ADialog := dxCreateMessageDialog(AMessage, mtWarning, mbYesNoCancel);
  try
    ADialog.FindButton(mbYes).Caption := 'Fix';
    ADialog.FindButton(mbNo).Caption := 'Restore Original';
    ADialog.FindButton(mbCancel).Caption := 'Close';

    ADialog.AlignButtons;  // Recalculates the button layout
    ADialog.ShowModal;     // Invokes the form as a modal dialog
  finally
    ADialog.Free;  // Releases the message box form once a user closes it
  end;
end;

Limitation

The dxUseStandardMessageDialogs global variable has no effect on dxCreateMessageDialog function calls.

See Also
dxCreateMessageDialog(System.String,Vcl.Dialogs.TMsgDlgType,Vcl.Dialogs.TMsgDlgButtons,dxMessageDialog.TdxMessageDialogHyperlinkClickDelegate,dxMessageDialog.TdxMessageDialogShowHyperlinkHintDelegate) Global Function