Tu peux le créer manuellement :
Déclarations (à mettre dans la clause Private ou Public de la form principale) :
CurrentHintWindow: THintWindow;
CurrentHint: String;
Dans le OnCreate de la Form principale :
CurrentHintWindow := THintWindow.Create(Self);
CurrentHintWindow.Color := clAqua;
CurrentHintWindow.Canvas.Font.Style := [fsBold];
CurrentHintWindow.Canvas.Font.Size := 10;
(les couleurs et autres styles sont des exemples de réglages)
Le CurrentHint est modifiable n'importe où dans le code...
Dans le OnDestroy de la Form principale :
CurrentHintWindow.Free;
Maintenant pour l'affichage, tu peux afficher le hint lorsque la souris entre dans l'emplacement de l'icone et l'effacer lorsque la
souris en ressort... tu peux aussi jouer avec des timers (1 qui permet d'afficher le hint au bout d'un certain temps et le 2ème qui
laisse le hint un certain temps)...
Pour afficher le hint :
var
HintRect: TRect;
begin
HintRect := CurrentHintWindow.CalcHintRect(Screen.Width, CurrentHint, nil);
CurrentHintWindow.ActivateHint(Rect(Mouse.CursorPos.X - HintRect.Right, Mouse.CursorPos.Y - HintRect.Bottom, Mouse.CursorPos.X,
Mouse.CursorPos.Y), CurrentHint);
Et pour désactiver le Hint :
CurrentHintWindow.ReleaseHandle;
Mais celà reste une solution vraiment manuelle...
Tout problème a sa solution... Mais en général, c'est jamais la bonne...