11 Vote

Delphi/Lazarus: Déterminer la Position de la Souris

Question de Invité | 22/10/2020 à 16:05

Existe-t-il une possibilité de spécifier la position actuelle de la souris dans Lazarus ou Delphi?

Par exemple en termes de coordonnées X et Y récentes à l'écran?

RépondrePositifNégatif
1Meilleure Réponse1 Vote

Oui c'est possible. Il existe même plusieurs façons de le faire. Tout d'abord, vous pouvez toujours utiliser Mouse.CursorPos.X et Mouse.CursorPos.Y pour accéder à la position actuelle de la souris sur l'écran. Par exemple comme ça:

procedure TForm1.Timer1Timer(Sender: TObject);
var
  x, y: integer;
begin
  x := Mouse.CursorPos.X;
  y := Mouse.CursorPos.Y;
  Caption := IntToStr(x) + ' ' + IntToStr(y);
end;

Dans cet exemple, nous utilisons une Timer afin de lire la position de la souris à intervalles réguliers et de les afficher comme légende du formulaire.

Cependant, de nombreux contrôles proposent directement l'événement OnMouseMove qui met automatiquement à disposition les variables X et Y. Entre autres, chaque Form propose également cet événement, de sorte que vous pouvez également récupérer la position de la souris de la manière suivante:

procedure TForm1.FormMouseMove(Sender: TObject; 
  Shift: TShiftState; X, Y: Integer);
begin
  Label1.Caption := IntToStr(X) + ' ' + IntToStr(Y);
end;

Dans cet exemple, nous affichons la position actuelle de la souris en tant que Caption d'une Label à chaque fois que la souris se déplace sur le formulaire.
23/10/2020 à 20:33

RépondrePositif Négatif
Répondre

Sujets Connexes

Avis Important

Veuillez noter: Les contributions publiées sur askingbox.com sont des contributions d’utilisateurs et ne doivent pas remplacer les conseils d’un professionnel. Ils ne sont pas vérifiés par des indépendants et ne reflètent pas nécessairement l’opinion de askingbox.com. Apprendre encore plus.

Participer

Posez votre propre question ou écrivez votre propre article sur askingbox.com. Voici comment.