Vcl.StdActns.THintAction

De RAD Studio API Documentation
Aller à : navigation, rechercher

Vcl.ActnList.TCustomActionSystem.Actions.TContainedActionSystem.Classes.TBasicActionSystem.Classes.TComponentSystem.Classes.TPersistentSystem.TObjectTHintAction

Delphi

THintAction = class(TCustomAction)

C++

class PASCALIMPLEMENTATION THintAction : public Vcl::Actnlist::TCustomAction

Propriétés

Type Visibilité  Source Unité  Parent
class public
Vcl.StdActns.pas
Vcl.StdActns.hpp
Vcl.StdActns Vcl.StdActns

Description

THintAction est l'action qui s'exécute lorsque l'utilisateur place le curseur de la souris sur un contrôle ou un élément de menu associé à un conseil.

N'utilisez pas THintAction dans une liste d'actions ou un gestionnaire d'actions de la même façon que les autres actions prédéfinies. THintAction n'est pas destinée à être associée avec un contrôle client. Elle est plutôt utilisée par l'objet application.

Lorsque l'utilisateur place le curseur de la souris sur un contrôle ou un élément de menu dont la propriété Hint est définie, l'application répond d'une des deux manières suivantes :

Si l'application possède un gestionnaire d'événement OnHint, elle génère un événement OnHint.

En l'absence de gestionnaire d'événement OnHint, l'application exécute un objet THintAction.

Lorsque THintAction s'exécute, elle appelle la méthode ExecuteAction des contrôles cibles potentiels afin que l'un d'entre eux lui réponde. Certains contrôles, tels que TStatusBar, redéfinissent la méthode ExecuteAction pour répondre à THintAction.

Les concepteurs de composants peuvent redéfinir la méthode ExecuteAction d'un nouveau composant pour répondre à THintAction en affichant des messages de conseil. Une telle méthode ExecuteAction peut se présenter sous la forme suivante :



function TMyControl.ExecuteAction(Action: TBasicAction): Boolean;
var
HintText: string;
begin
if Action is THintAction then
begin
HintText := THintAction(Action).Hint;
{ provoque l'affichage du texte du conseil }
Result := True;
end
else Result := inherited ExecuteAction(Action);
end;



bool __fastcall TMyControl::ExecuteAction(TBasicAction *Action)
{
THintAction *pHint = dynamic_cast<THintAction *>(Action);
if (pHint)
{
// instructions pour afficher pHint->Hint
return true;
}
return TComponent::ExecuteAction(Action);
}



Voir aussi