Skip to main content
All docs
V24.2

TdxMessageDialogShowHyperlinkHintDelegate Type

The procedural type for a hyperlink hint display handler in a message dialog.

Declaration

TdxMessageDialogShowHyperlinkHintDelegate = reference to procedure(AArgs: TdxShowHyperlinkHintEventArgs);

Parameters

Name Type Description
AArgs TdxShowHyperlinkHintEventArgs

Stores information related to a hyperlink hint display event in a DevExpress control or its UI element.

Remarks

A hyperlink defined as a part of formatted text in a message box dialog displays the target URI in a hint when the mouse pointer hovers over the hyperlink.

You can implement a handler of the TdxMessageDialogShowHyperlinkHintDelegate type and pass it as the AShowHyperlinkHintProc parameter of any message box creation method to change hint content.

The code example in this section demonstrates TdxMessageDialogHyperlinkClickDelegate and TdxMessageDialogShowHyperlinkHintDelegate handlers. The TdxMessageDialogHyperlinkClickDelegate handler requires a user to hold down the Ctrl key to activate a hyperlink. The TdxMessageDialogShowHyperlinkHintDelegate handler changes all hyperlink hints to prompt a user to hold the Ctrl key for hyperlink activation.

procedure TMyForm.LinkClickHandler(AArgs: TdxHyperlinkClickEventArgs);
begin
  if AArgs.Shift <> [ssCtrl] then // If the Ctrl key is not held down
    AArgs.Handled := True;  // Prevents hyperlink activation
end;

procedure TMyForm.LinkHintHandler(AArgs: TdxShowHyperlinkHintEventArgs);
var
  AHintPrefix, AHintURI: string;
begin
  AHintPrefix := 'Ctrl-click to navigate to ';
  AHintURI := AArgs.URI.Remove(0, 8);  // Removes the URI scheme from the hyperlink hint
  AArgs.Hint := AHintPrefix + AHintURI;  // Redefines the hyperlink hint
end;

// This procedure displays a message box with dynamic content and prevents MAILTO links from being opened
procedure TMyForm.ShowMyMessage(const AMessage: string; const ALink: string);
begin
  dxCreateMessageDialog(AMessage + #13#10 + ' [URL=' + ALink + ']' + ALink + '[/URL]',
    LinkClickHandler, LinkHintHandler);
end;

VCL Editors Library: A Custom Hyperlink Hint

Direct TdxMessageDialogShowHyperlinkHintDelegate Type References

The following global methods reference the TdxMessageDialogShowHyperlinkHintDelegate procedural type as the AShowHyperlinkHintProc parameter:

dxCreateMessageDialog Overloads

dxCreateMessageDialog(string,TMsgDlgType,TMsgDlgButtons,TMsgDlgBtn,TdxMessageDialogHyperlinkClickDelegate,TdxMessageDialogShowHyperlinkHintDelegate)
Creates a message dialog box form with specified settings.
dxCreateMessageDialog(string,TMsgDlgType,TMsgDlgButtons,TdxMessageDialogHyperlinkClickDelegate,TdxMessageDialogShowHyperlinkHintDelegate)
Creates a message dialog box form with the specified settings.

dxMessageBox Overloads

dxMessageBox(THandle,string,string,Integer,TdxMessageDialogHyperlinkClickDelegate,TdxMessageDialogShowHyperlinkHintDelegate)
Invokes a modal message dialog box.
dxMessageBox(string,string,Integer,TdxMessageDialogHyperlinkClickDelegate,TdxMessageDialogShowHyperlinkHintDelegate)
Invokes a modal message dialog box.

dxMessageDlg Overloads

dxMessageDlg(string,TMsgDlgType,TMsgDlgButtons,Longint,TMsgDlgBtn,TdxMessageDialogHyperlinkClickDelegate,TdxMessageDialogShowHyperlinkHintDelegate)
Invokes a modal message dialog box.
dxMessageDlg(string,TMsgDlgType,TMsgDlgButtons,Longint,TdxMessageDialogHyperlinkClickDelegate,TdxMessageDialogShowHyperlinkHintDelegate)
Invokes a modal message dialog box.

dxMessageDlgPos Overloads

dxMessageDlgPos(string,TMsgDlgType,TMsgDlgButtons,Longint,Integer,Integer,TdxMessageDialogHyperlinkClickDelegate,TdxMessageDialogShowHyperlinkHintDelegate)
Invokes a modal message dialog box at the specified position on the screen.
dxMessageDlgPos(string,TMsgDlgType,TMsgDlgButtons,Longint,Integer,Integer,TMsgDlgBtn,TdxMessageDialogHyperlinkClickDelegate,TdxMessageDialogShowHyperlinkHintDelegate)
Invokes a modal message dialog box at the specified position on the screen.

dxMessageDlgPosHelp Overloads

dxMessageDlgPosHelp(string,TMsgDlgType,TMsgDlgButtons,Longint,Integer,Integer,string,TdxMessageDialogHyperlinkClickDelegate,TdxMessageDialogShowHyperlinkHintDelegate)
Invokes a message dialog box whose help topic is supplied in a specified help file.
dxMessageDlgPosHelp(string,TMsgDlgType,TMsgDlgButtons,Longint,Integer,Integer,string,TMsgDlgBtn,TdxMessageDialogHyperlinkClickDelegate,TdxMessageDialogShowHyperlinkHintDelegate)
Invokes a message dialog box whose help topic is supplied in a specified help file.

Miscellaneous dxShowMessage Methods

dxShowMessage(string,TdxMessageDialogHyperlinkClickDelegate,TdxMessageDialogShowHyperlinkHintDelegate)
Invokes a generic message dialog box with an OK button.
dxShowMessageFmt(string,Untyped[],TdxMessageDialogHyperlinkClickDelegate,TdxMessageDialogShowHyperlinkHintDelegate)
Displays a message dialog box with a formatted message.
dxShowMessagePos(string,Integer,Integer,TdxMessageDialogHyperlinkClickDelegate,TdxMessageDialogShowHyperlinkHintDelegate)
Invokes the message dialog box at the specified position on the screen.
See Also