étant novice en programmation, je viens solliciter votre aide sur un problème qu je viens de rencontrer. Je m'explique : je souhaite récuperer les coordonnées de la souris au moment d'un clic gauche. Pour cela, j'ai écrit la fonction clic() suivante :
let clic() = let attend = wait_next_event [Button_down] in let abscisse = attend.mouse_x and ordonnee = attend.mouse_y in abscisse,ordonnee;;
mon but est de modifier la case de mon plateau p de coordonnées (i,j), mais le résultat est que je modifie toutes les cases par lesquelles je suis passé avec ma souris même sans y avoir cliqué... voici mon code :
let joue p c =
(x,y)=clic(); let i=(x-25)/50 in (* j'effectue un traitement sur les coordonnées reçus *) let j=(y-25)/50 in (* pour les faire correspondre a mon plateau de jeu *) p.(i).(j)<-c;;
Marsh Posté le 04-12-2009 à 00:00:49
Salut à tous,
étant novice en programmation, je viens solliciter votre aide sur un problème qu je viens de rencontrer.
Je m'explique :
je souhaite récuperer les coordonnées de la souris au moment d'un clic gauche. Pour cela, j'ai écrit la fonction clic() suivante :
let clic() = let attend = wait_next_event [Button_down] in
let abscisse = attend.mouse_x and ordonnee = attend.mouse_y in abscisse,ordonnee;;
mon but est de modifier la case de mon plateau p de coordonnées (i,j), mais le résultat est que je modifie toutes les cases par lesquelles je suis passé avec ma souris même sans y avoir cliqué... voici mon code :
let joue p c =
(x,y)=clic();
let i=(x-25)/50 in (* j'effectue un traitement sur les coordonnées reçus *)
let j=(y-25)/50 in (* pour les faire correspondre a mon plateau de jeu *)
p.(i).(j)<-c;;
Merci de votre aide