aureliensm
Messages postés21Date d'inscriptionmercredi 31 décembre 2003StatutMembreDernière intervention21 janvier 2007
-
21 janv. 2006 à 14:41
cs_Delphiprog
Messages postés4297Date d'inscriptionsamedi 19 janvier 2002StatutMembreDernière intervention 9 janvier 2013
-
21 janv. 2006 à 20:35
Bonjour à tous. Actuellement, je suis dans un projet de jeu (RTS) et j'aimerais pouvoir me déplacer sur une map à l'aide de la souris sans cliquer sur la souris. juste en la bougeant.
Mais je ne sais pas quels composants utiliser.
j'utilise delphi 7 perso
merci
cs_Delphiprog
Messages postés4297Date d'inscriptionsamedi 19 janvier 2002StatutMembreDernière intervention 9 janvier 201332 21 janv. 2006 à 19:29
Pour déplacer le curseur d ela souris en un point quelconque sur une fiche ou un autre composant, utiliser la propriété CursorPos de l'objet Mouse :
procedure TForm1.Button1Click(Sender: TObject);
begin
Mouse.CursorPos := Image1.ClientToScreen(Point(10,10));
end ;
Tu peux t'aider de la fonction ClientToScreen car l'objet Mouse ne connait que les coordonnées globales de l'écran. En opérant comme cela, le curseur de la souris sera positionné aux coordonnées (10,10) sur Image1.
<HR color =#008000>
Pensez à cliquer sur Réponse acceptée lorsque la réponse vous convient.
cs_Delphiprog
Messages postés4297Date d'inscriptionsamedi 19 janvier 2002StatutMembreDernière intervention 9 janvier 201332 21 janv. 2006 à 20:35
Si tu veux positionner la souris, tu dois fournir les coordonnées à la fonction Point comme ci-dessus.
Si tu veux connaitre les coordonnées de la souris, utilise l'évènement OnMouseMove sur le composant que tu veux "pister". Dans les arguments transmis à la méthode, tu trouveras les coordonnées X et Y exprimées par rapport au coin supérieur gauche du composant.
<hr color="#008000">Pensez à cliquer sur Réponse acceptée lorsque la réponse vous convient.
aureliensm
Messages postés21Date d'inscriptionmercredi 31 décembre 2003StatutMembreDernière intervention21 janvier 2007 21 janv. 2006 à 20:20
Merci de ta réponse, elle me convient parfaitement. Par contre, vu que je suis un peu novice, j'aurais quelques autres trucs à vous demander.
pour cela : Mouse.CursorPos := Image1.ClientToScreen(Point(10,10));
La position de la souris sera donc au point 10,10.
mais par contre, si je déplace la souris vers la gauche, le haut, le bas ou la droite, comment devrais-je procéder ? Car là, j'ai juste indiqué une position.
merci