Application.Hint problem
FormHelp component
Previous  Top 
All previous FormHelp versions (before v3.0), used first part of hint for displaying the context-help. This makes a big problem, because forms with FormHelp could not show normal hints. To avoid this problem, FormHelp v3.0+ uses only secondary part of hint, also known as Application.Hint. However, unfortunately, sometimes this may lead to another problem.

For example, you are using the Application.OnHint event to display the secondary part of hint in the status bar. In this case, the status bar will display the context-sensitive help but with all formatting tags:

To avoid new problem you may use following code:
// let's say you would like hook the Application hints... ShowHint procedure described in the public section of TMainForm class   
procedure TMainForm.FormCreate(Sender: TObject);  
  Application.OnHint := ShowHint;  
procedure TMainForm.ShowHint(Sender: TObject);  
  { for example, status bar contains several sections to display   some useful information but we would like to switch it to the   simple panel mode to show second part of hint for menu items }   
  if (Length(Application.Hint) > 0and // if Application.Hint is not empty   
     (Copy(Application.Hint, 11) <> '['then { super kludge. '[' character means that second part of hint is the context-sensitive help. The '[' sign opens the tag for text formatting. In this case we don't want to display this text in the status bar. }  
    StatusBar.SimplePanel := True;   
    StatusBar.SimpleText := Application.Hint;  
  else StatusBar.SimplePanel := False;  

We really think that second part is more convenient for context-sensitive help than first, because it let us to show commonly used regular hints as well. For example, we have a toolbar with some buttons, and we would like to show either normal hints and the context-sensitive help. Third version allows to do this. However, if the Application.Hint problem critical for you, we appreciate some feedback with ideas and suggestions! Email us: