FMX.Objects.TSelection.MouseMove

De RAD Studio API Documentation
Aller à : navigation, rechercher

Delphi

procedure MouseMove(Shift: TShiftState; X, Y: Single); override;

C++

virtual void __fastcall MouseMove(System::Classes::TShiftState Shift, float X, float Y);

Propriétés

Type Visibilité  Source Unité  Parent
procedure
function
public
FMX.Objects.pas
FMX.Objects.hpp
FMX.Objects TSelection

Description

Gère le déplacement du pointeur de la souris au-dessus d'un objet TSelection.

Lors du déplacement du pointeur de la souris au-dessus d'un objet TSelection, cette méthode est appelée de façon répétée. Elle est appelée chaque fois avec les nouvelles coordonnées du pointeur de la souris, reflétant le chemin continu de ce dernier.

Paramètres

MouseMove comporte les paramètres suivants :

  • Shift -- appartient au type TShiftState et transmet des informations complémentaires, par exemple : sur quel bouton de la souris un clic a été effectué (ssLeft -- gauche, ssRight -- droite) ou si les touches mortes (ssShift-- MAJ, ssCtrl -- CTRL ou ssAlt -- ALT) étaient enfoncées lors du clic sur le bouton de la souris.
  • X et Y -- sont les coordonnées locales, exprimées en pixels, du pointeur de la souris dans l'objet TSelection.

Fonctionnalité

MouseMove exécute les opérations suivantes :

  1. MouseMove appelle la méthode héritée FMX.Controls.TControl.MouseMove. Puis :
  2. Si le bouton de la souris n'est pas enfoncé :
    1. Vérifie si le pointeur de la souris se trouve au dessus d'un contrôle poignée :
      • Lorsque le pointeur de la souris se déplace au-dessus d'un contrôle poignée -- affiche la flèche de redimensionnement du contrôle poignée au-dessus de laquelle se déplace le pointeur de la souris.
      • Lorsque le pointeur de la souris se déplace hors d'un contrôle poignée -- efface les flèches de redimensionnement, le cas échéant.
    2. Impose un nouveau dessin de la forme de sélection.
  3. Si le bouton gauche de la souris est enfoncé dans l'objet TSelection :
    1. Déplace la forme de l'objet TSelection sur le vecteur, le point de départ correspondant aux coordonnées de l'emplacement où a été effectué un clic sur le bouton de la souris et le point d'arrivée correspondant aux coordonnées actuelles de la souris.
      • Si ParentBounds a la valeur True, la forme de l'objet TSelection est déplacée à l'intérieur des limites du contrôle parent.
      • Si ParentBounds a la valeur False, la forme de l'objet TSelection est déplacée à l'intérieur des limites de l'objet TCanvas en cours.
    2. Appelle le gestionnaire d'événement client de l'événement OnTrack.
  4. Si le bouton gauche de la souris est enfoncé sur l'un des contrôles poignée de l'objet TSelection :
    1. La forme de l'objet TSelection est redimensionnée pour traduire le déplacement du contrôle poignée sélectionné.
      • Si ParentBounds a la valeur True, la forme de l'objet TSelection est redimensionnée pour correspondre aux limites du contrôle parent.
      • Si ParentBounds a la valeur False, la forme de l'objet TSelection est redimensionnée pour correspondre aux limites de l'objet TCanvas en cours.
      • Si Proportional a la valeur True, la forme de l'objet est redimensionnée en conservant les proportions Largeur/hauteur.
    2. Appelle le gestionnaire d'événement client de l'événement OnTrack.
    3. Impose un nouveau dessin de la forme de sélection.


Redéfinissez la méthode MouseMove avec la visibilité public pour fournir une réponse personnalisée si le pointeur de la souris est déplacé au-dessus de l'objet TSelection.

Voir aussi