OnShowHint (Delphi)

From RAD Studio Code Examples
Jump to: navigation, search

Description

This example uses three speed buttons on a panel. The code changes the color, width, and position of the text in the Help Hint for the third speed button. Set the ShowHint property of each speed button to True and give a value to the Hint property of each. You must declare the DoShow method in the type declaration of the form. Once it is declared, write the code for the DoShow method in the implementation part of the unit. Finally, in the OnCreate event handler for the form, assign the method to the OnShowHint event of the application.

Code

procedure TForm1.DoShowHint(var HintStr: String; var CanShow: Boolean; var HintInfo: THintInfo);
begin
  if HintInfo.HintControl = SpeedButton3 then
  begin
    with HintInfo do
    begin
      HintColor := clAqua;{ Changes only for this hint. }
      HintMaxWidth := 120;{Hint text word wraps if width is greater than 120. }
      Inc(HintPos.X, SpeedButton3.Width); { Move hint to the right edge. }
    end;
  end;
end;

procedure TForm1.FormCreate(Sender: TObject);
begin
  Application.ShowHint := True;
  Application.OnShowHint := DoShowHint;
end;

Uses