PC SOFT

FOROS PROFESIONALES
WINDEVWEBDEV y WINDEV Mobile

Inicio → WINDEV 2025 → La fonction SourisPosX(spImage) ne semble pas fonctionner correctement
La fonction SourisPosX(spImage) ne semble pas fonctionner correctement
Iniciado por ThomasJ, 30,sep. 2020 18:26 - 5 respuestas
Miembro registrado
52 mensajes
Publicado el 30,septiembre 2020 - 18:26
Bonjour,

J'essaie d'obtenir la coordonnée X et Y du clic de la souris dans un champ image, mais par rapport à l'image elle même, et non par rapport au champ.

Pour ce faire, j'utilise les fonctions SourisPosX(spImage) et SourisPosX(spImage)

Pourtant, j'obtiens les mêmes résultats qu'en utilisant le paramètre spChamp, ce qui ne semble pas être normal.

Mon champ Image mode Homothétique centré et peut accueillir des images de différentes tailles. J'utilise ses fonctions dans l'évènement CLIC du champ Image.

Comment puis-je obtenir la coordonnée X et Y par rapport à l'image lors du clic.

Merci à l'avance.
Thomas
Miembro registrado
948 mensajes
Publicado el 30,septiembre 2020 - 18:55
Bonjour
Windev Version 24 - 01F240042h : SourisPosX(spImage) renvoie bien la position de la souris par rapport à l'image tandis que SourisPosX(spChamp) c'est par rapport au champ.

--
«Nos clients sont nos meilleurs beta testeur.» H. Mintzberg
«Un programme informatique fait ce que vous lui avez dit de faire, pas ce que vous voulez qu'il fasse» Troisième loi de Greer
Miembro registrado
52 mensajes
Publicado el 30,septiembre 2020 - 19:01
Pourtant, j'essaie avec spImage et j'obtiens le même résultat qu'avec spChamp. Par exemple, dans le cas où mon image s'affiche plus petite que la taille du champ, lorsque je clique sur le coin supérieur gauche de l'image, j'obtient quelque chose du genre (25, 43), au lieu d'obtenir (0, 0).

Est-ce qu'il y a quelque chose que je ne fais pas correctement ?

Merci
Miembro registrado
948 mensajes
Publicado el 30,septiembre 2020 - 20:50
bonjour
non j'ai fait la même chose que vous une Image mode Homothétique centré sans agrandissement (820x500) avec une image (407x724)
code du clic sur l'image
Trace(SourisPosX(spImage))
Trace(SourisPosX(spChamp))

clic sur le coin supérieur gauche du champ : -257 et 1
clic sur le coin supérieur gauche de l'image : 1 et 269

--
«Nos clients sont nos meilleurs beta testeur.» H. Mintzberg
«Un programme informatique fait ce que vous lui avez dit de faire, pas ce que vous voulez qu'il fasse» Troisième loi de Greer
Miembro registrado
52 mensajes
Publicado el 30,septiembre 2020 - 21:02
C'est très étrange. J'utilise pourtant le même code que vous et j'obtiens ceci :




Je ne comprend vraiment pas pourquoi.

Je suis dans une fenêtre maximisée à l'ouverture. J'exécute ce code :
Trace(SourisPosX(spImage))
Trace(SourisPosX(spChamp))

dans le bloc Clic sur IMG_Plan.

Je suis en WinDev 23.
Miembro registrado
948 mensajes
Publicado el 01,octubre 2020 - 15:11
Bonjour
Signalez le problème au ST de PcSoft en leur donnant votre numéro de version de windev.
En attendant, vous pouvez vous en sortir en trdimensionant votre champ qui contient l'image
myPicture est une Image = "d:\temp\me\me.jpg"
ChampImage..Largeur = myPicture..Largeur
ChampImage..Hauteur = myPicture..Hauteur


--
«Nos clients sont nos meilleurs beta testeur.» H. Mintzberg
«Un programme informatique fait ce que vous lui avez dit de faire, pas ce que vous voulez qu'il fasse» Troisième loi de Greer