Délimiter zone cliquable

Messages postés
21
Date d'inscription
jeudi 2 septembre 2004
Statut
Membre
Dernière intervention
20 septembre 2006
-
Messages postés
53
Date d'inscription
mercredi 3 décembre 2003
Statut
Membre
Dernière intervention
21 janvier 2019
-
Bonjour à tous.
Voilà dans un SWF, je déplace un texte grâce à la souris de la manière suivante :
// Code ici pour déplacer le Texte


var listener:Object = new Object();
var deplacement:Boolean = false;
 
listener.onMouseDown = function() {


   deplacement = true;
   TextePlaque._x = _xmouse;
   TextePlaque._y = _ymouse;
 
};
listener.onMouseUp = function() {


   deplacement = false;
 
};
listener.onMouseMove = function() {
 if (deplacement == true) {
  TextePlaque._x = _xmouse;
  TextePlaque._y = _ymouse;
 }
};


Mouse.addListener(listener);



Ca fonctionne parfaitement.
Le hic, c'est que un peu plus bas dans mon flash, j'ai mis un bouton avec le code suivant :
BtnSuivant.onPress= function (){
 var lv_send:LoadVars = new LoadVars();
 lv_send.coord_x = TextePlaque._x;
 lv_send.coord_y = TextePlaque._y;
 lv_send.send("RecuperationCoordonneesTexte.php", "_self", "GET");
}

Le bouton en lui même fonctionne mais quand je clic dessus, j'ai toujours le texte qui bouge et qui vient se positionner sur mon bouton, donc en gros, c'est la fonction onMouseDown qui prend la main sur mon BtnSuivant.onPress
J'ai donc essayé de délimiter la zone comme ceci par exemple :
listener.onMouseDown = function() {
if((_xmouse>0 &amp;&amp; _xmouse<550)&amp;&amp;(_ymouse>0 &amp;&amp; _ymouse<500))
   deplacement = true;
   TextePlaque._x = _xmouse;
   TextePlaque._y = _ymouse;
 
};

Mais rien à faire, ça ne fonctionne pas et le onMouseDown ne fonctionne pas malgré que je suis dans la bonne zone délimitée.
Auriez-vous une idée?
D'avance, Merci  ;-)

1 réponse

Messages postés
53
Date d'inscription
mercredi 3 décembre 2003
Statut
Membre
Dernière intervention
21 janvier 2019

Pourquoi tu n'essayerais pas de limiter le déplacement du texte dans la fonction onMouseMove?

Par exemple:




listener.onMouseMove = function() {
    if (deplacement == true) {
        if(_xmouse < limiteX)TextePlaque._x = _xmouse;
       
if(_ymouse < limiteY)
TextePlaque._y = _ymouse;
    }
};

Je n'ai pas testé cette solution c'est juste une idée.