Page 1 sur 2

[V] Fonction : enregistré + coordonné

Posté : mer. 24 juin 2015 13:28
par Dudule100
Bonjour,

Voila, je voudrais créé une fonction que j'ai nommer GetPos (pour "avoir position"). Mais je ne sais pas quoi mettre dans les balises fonction pour qu'elle permet d'enregistré le prochain clique de la personne et donne les coordonné.

Pouvez vous m'aider ?

Voila mon bout de code qui doit contenir cette fonction :

Code : Tout sélectionner

msgbox(0, "AutoConfig 6/11", "Cliquez sur le coin superieur gauche de la fenêtre désiré")
   Local $Win_1 = StringSplit(GetPos(), "|")
   $Win_1_x = $Win_1[1]
   $Win_1_y = $Win_1[2]
   msgbox(0, "AutoConfig 7/11", "Cliquez sur le coin inferieur droit de la fenêtre désiré")
   Local $Win_2 = StringSplit(GetPos(), "|")
   $Win_2_x = $Win_2[1]
   $Win_2_y = $Win_2[2]

Re: [..] Fonction : enregistré + coordonné

Posté : mer. 24 juin 2015 13:29
par Feonor
Bonjour,

ce que tu souhaite c est une fonction qui attende que la personne click pour enregistrer les coordonner du click?

Pour obtenir la position de la souris tu a un function nommer mousegetpos.

Re: [..] Fonction : enregistré + coordonné

Posté : mer. 24 juin 2015 13:30
par Dudule100
J'ai modifier mon 1er sujet avec un bout de code qui devrais pouvoir t'éclairer sur se que je veux !

Re: [..] Fonction : enregistré + coordonné

Posté : mer. 24 juin 2015 13:33
par Feonor
Ok, ta fonction enregistre les clicks, c'est ce que tu souhaite?
ou tu veux en faite savoir quand l’opérateur a cliquer?

Re: [..] Fonction : enregistré + coordonné

Posté : mer. 24 juin 2015 13:34
par Dudule100
Je veux que la fonction enregistre le clic de la personne quand elle clique dans les coins, pour, par la suite les réutiliser.

Re: [..] Fonction : enregistré + coordonné

Posté : mer. 24 juin 2015 13:43
par Feonor

Code : Tout sélectionner

msgbox(0, "AutoConfig 6/11", "Positionnez la souris sur le coin superieur gauche de la fenêtre désiré et appuyer sur la touche ENTRER")
;~    Local $Win_1 = StringSplit(GetPos(), "|")
    Local $Win_1 = MouseGetPos()
   $Win_1_x = $Win_1[0]
   $Win_1_y = $Win_1[1]
   msgbox(0, "AutoConfig 7/11", "Positionnez la souris sur le coin inferieur droit de la fenêtre désiré et appuyer sur ENTRER")
;~    Local $Win_2 = StringSplit(GetPos(), "|")
    Local $Win_1 = MouseGetPos()
   $Win_2_x = $Win_2[0]
   $Win_2_y = $Win_2[1]
 
Ce code est la manière la plus simple de gérer ton problème
Quand l’opérateur à positionnez sa souris, il appuie sur la touche entrer de son clavier,
validant ainsi la msgbox et permettant d'obtenir la position de la souris avec MouseGetPos(), rebelote pour la deuxième passe.

Re: [..] Fonction : enregistré + coordonné

Posté : mer. 24 juin 2015 13:45
par Dudule100
C'est la fonction GetPos() que je voudrais faire ! Je ne sais pas quoi mettre pour qu'il sauvgarde la position !

Re: [..] Fonction : enregistré + coordonné

Posté : mer. 24 juin 2015 13:49
par Feonor

Code : Tout sélectionner

msgbox(0, "AutoConfig 6/11", "Positionnez la souris sur le coin supérieur gauche de la fenêtre désiré et appuyer sur la touche ENTRER")
   Local $Win_1 = StringSplit(GetPos(), "|")
   $Win_1_x = $Win_1[1]
   $Win_1_y = $Win_1[2]
msgbox(0, "AutoConfig 7/11", "Positionnez la souris sur le coin inférieur droit de la fenêtre désiré et appuyer sur ENTRER")
   Local $Win_2 = StringSplit(GetPos(), "|")
   $Win_2_x = $Win_2[1]
   $Win_2_y = $Win_2[2]

Func GetPos()
    Local $Temp = MouseGetPos(0)&"|"&MouseGetPos(1)
    Return $Temp
EndFunc
 

Re: [..] Fonction : enregistré + coordonné

Posté : mer. 24 juin 2015 13:50
par Feonor
Pour sauvegarder toutes tes positions tu peux faire un tableaux ayant une taille dynamique

c'est cela que tu souhaite?

Re: [..] Fonction : enregistré + coordonné

Posté : mer. 24 juin 2015 13:53
par Dudule100
Je début donc je ne sais pas trop ! ^^

Re: [..] Fonction : enregistré + coordonné

Posté : mer. 24 juin 2015 14:01
par Dudule100
mais si ma fonction a sa :

Code : Tout sélectionner

Func GetPos()
    Local $Temp = MouseGetPos(0)&"|"&MouseGetPos(1)
    Return $Temp
EndFunc
Est ce que elle ra enregistrer les position haut gauche et bas droit !?

Re: [..] Fonction : enregistré + coordonné

Posté : mer. 24 juin 2015 14:05
par Feonor
► Afficher le textegetpos
Voila alors en faite,
A chaque appelle de ta Fonction GetPos tu va enregistrer la position dans un tableaux ($_Arr_Position) qui sera dynamique car redimensionnez via "_ArrayInsert"
Chaque position sera enregistrer a partir de la ligne 1 donc sa donnera :
► Afficher le texteExplication
en tu renvoi en même temps la chaîne de caractère comprenant les coordonné X et Y de ta souris au moment de l'appelle de la fonction.

A la fin de ton code ecrit _ArrayDisplay($_Arr_Position, "liste_position")
sa simplifiera ton devellopement.

Re: [..] Fonction : enregistré + coordonné

Posté : mer. 24 juin 2015 14:10
par Dudule100
Image

Re: [..] Fonction : enregistré + coordonné

Posté : mer. 24 juin 2015 14:12
par Feonor
desolé oublie de ma part ^^

a la ligne

_ArrayInsert($_Arr_Position, UBound($_arr_modele) - 1, $Temp, 0, "|")
remplace par
_ArrayInsert($_Arr_Position, UBound($_arr_position) - 1, $Temp, 0, "|")

Re: [..] Fonction : enregistré + coordonné

Posté : mer. 24 juin 2015 14:14
par Feonor
encore un petit oublie (decidement ^^)
► Afficher le texteEXPLICATION BIS

Re: [..] Fonction : enregistré + coordonné

Posté : mer. 24 juin 2015 14:15
par Feonor
Oublie pas le #include <array.au3> au tout début de ton script

Re: [..] Fonction : enregistré + coordonné

Posté : mer. 24 juin 2015 14:15
par mikell
Pour l'erreur "unknown", n'oublie pas l'include #Include <Array.au3> en tête de script

Re: [..] Fonction : enregistré + coordonné

Posté : mer. 24 juin 2015 14:15
par Dudule100
Image

Re: [..] Fonction : enregistré + coordonné

Posté : mer. 24 juin 2015 14:16
par Feonor
Synchro les gars ^^ 3 msg en même temps ^^

Re: [..] Fonction : enregistré + coordonné

Posté : mer. 24 juin 2015 14:23
par Dudule100

Code : Tout sélectionner

#Include <Array.au3>
HotKeySet("{F6}","_Exit")
Global $_Arr_Position[1][2]

msgbox(0, "AutoConfig 6/11", "Cliquez sur le coin superieur gauche de la Fenêtre")
   Local $Win_1 = StringSplit(GetPos(), "|")
   $Win_1_x = $Win_1[1]
   $Win_1_y = $Win_1[2]
   msgbox(0, "AutoConfig 7/11", "Cliquez sur le coin inferieur droit de la Fenêtre")
   Local $Win_2 = StringSplit(GetPos(), "|")
   $Win_2_x = $Win_2[1]
   $Win_2_y = $Win_2[2]

Func _Exit()
    Exit
EndFunc
Func GetPos()
    Local $Temp = MouseGetPos(0)&"|"&MouseGetPos(1)
    _ArrayInsert($_Arr_Position, UBound($_Arr_Position) - 1, $Temp, 0, "|")
    Return $Temp
EndFunc

_ArrayDisplay($_Arr_Position, "liste_position")