IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Flash Discussion :

[FLASH MX] Contraintes de startDrag


Sujet :

Flash

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Inscrit en
    Mai 2003
    Messages
    17
    Détails du profil
    Informations forums :
    Inscription : Mai 2003
    Messages : 17
    Par défaut [FLASH MX] Contraintes de startDrag
    Slt,

    Pb : Je ne parviens pas à contraindre un startDrag comme je le souhaite.

    Contxt : j'ai un clip sr ma scène nommé "principal" (x: -285.1 ; y: -135.2 ), ds ce clip j'ai un clip nommé "euro" (x: -333.4 ; y: -654.9 ), et ds ce clip j'ai un graphique qu'on appellera "carte" (x: -174.8 ; y: -284.1 ).

    Objectif : je souhaite pouvoir faire un drag dans un rectangle de contraintes correspondant au graphique "carte" depuis un bouton présent ds mon clip "principal".

    Ce que j'ai fait : j'ai associé au bouton l'ActScpt suivant :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    monbouton.onPress = function() { startDrag(euro, false, euro._x-174.8, euro._y-284.1, euro._x+800, euro._y+800);	
    }
    Mes deux 800 correspondent à la longueur et la largeur du clip "euro" moins les coordonnées du graphique "carte".


    En essayant d'être précis, j'ai été un peu long, sorry

    Merci de votre aide

  2. #2
    Membre Expert
    Avatar de bolo
    Inscrit en
    Novembre 2002
    Messages
    1 309
    Détails du profil
    Informations forums :
    Inscription : Novembre 2002
    Messages : 1 309
    Par défaut
    merci d'eviter le style sms

    essaye d'expliquer plus simplement ton problème

  3. #3
    Membre averti
    Inscrit en
    Mai 2003
    Messages
    17
    Détails du profil
    Informations forums :
    Inscription : Mai 2003
    Messages : 17
    Par défaut
    Désolé pour les abréviations ...

    En bref, je ne parviens pas à contraindre mon startDrag dans un rectangle correspondant à un clip.
    Les paramètres que je mets dans la méthode startDrag ne me donne pas les contraintes que je souhaite.

    Quelqu'un pourrait-il m'indiquer à quoi correspond exactement ces paramètres (l'aide de Flash étant très évasive...), et comment tenir compte des coordonnées du clip à l'intérieur de mon clip.

    Merci

  4. #4
    Membre Expert
    Avatar de bolo
    Inscrit en
    Novembre 2002
    Messages
    1 309
    Détails du profil
    Informations forums :
    Inscription : Novembre 2002
    Messages : 1 309
    Par défaut
    d'apres l'aide
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    my_mc.startDrag([lock, [left, top, right, bottom]])
    qu'est que tu ne comprends pas dedans .?

  5. #5
    Membre averti
    Inscrit en
    Mai 2003
    Messages
    17
    Détails du profil
    Informations forums :
    Inscription : Mai 2003
    Messages : 17
    Par défaut
    Ce que je ne comprends pas c'est par rapport à quoi les coordonnées du rectangle doivent être définies.

    Quand je définis mon rectangle, c'est-à-dire ses coordonnées au niveau du clip parent, il ne correspond pas à ce que je veux.

    Dans l'aide il est précisé coordonnées relatives au clip parent, c'est ce que je fais.

    Merci

  6. #6
    Membre Expert
    Avatar de bolo
    Inscrit en
    Novembre 2002
    Messages
    1 309
    Détails du profil
    Informations forums :
    Inscription : Novembre 2002
    Messages : 1 309
    Par défaut
    deja je comprends pourquoi tu marqua ca
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
     { startDrag(euro, false, euro._x-174.8, euro._y-284.1, euro._x+800, euro._y+800);

    tu cherches a faires quoi exactement

  7. #7
    Membre averti
    Inscrit en
    Mai 2003
    Messages
    17
    Détails du profil
    Informations forums :
    Inscription : Mai 2003
    Messages : 17
    Par défaut
    C'est vrai que c'était stupide , j'en suis là maintenant :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    startDrag(eurotot,false, -74.5, -523.6, 862.1, 395);
    Ces coordonnées correspondent exactement aux coordonnées de mon rectangle de drag dans mon clip parent. Malheureusement, le rendu n'est pas ce que je veux

  8. #8
    Expert confirmé

    Avatar de freegreg
    Profil pro
    Inscrit en
    Août 2002
    Messages
    4 376
    Détails du profil
    Informations personnelles :
    Âge : 47
    Localisation : France, Gard (Languedoc Roussillon)

    Informations forums :
    Inscription : Août 2002
    Messages : 4 376
    Par défaut
    Tes coordonnées (-74.5, -523.6, 862.1, 395), tu les calcules à partir de quel clip?

  9. #9
    Membre averti
    Inscrit en
    Mai 2003
    Messages
    17
    Détails du profil
    Informations forums :
    Inscription : Mai 2003
    Messages : 17
    Par défaut
    C'est LA bonne question, je les récupère dans le clip ("principal") où se trouve le clip avec le lequel je veux faire un drag ("euro").

    Ca vient peut-être de ma façon de récupérer ces coordonnées ? Je fais simplement positionner ma souris dans un coin de mon rectangle "imaginaire" et je regarde dans la fenêtre "Info".

    Est-ce que ce rectangle correspond au rectangle qu'occupe mon clip ("euro") dans son clip parent ("principal") (si je veux faire un drag sur la totalité de mon clip ("euro") ?

  10. #10
    Expert confirmé

    Avatar de freegreg
    Profil pro
    Inscrit en
    Août 2002
    Messages
    4 376
    Détails du profil
    Informations personnelles :
    Âge : 47
    Localisation : France, Gard (Languedoc Roussillon)

    Informations forums :
    Inscription : Août 2002
    Messages : 4 376
    Par défaut
    Je vais essayer de résumer pour voir si j'ai bien compris
    Tu as un clip euro
    Dans celui-ci tu as un clip a déplacer et un clip rectangle (r) qui doit borner les déplacements du clip à déplacer.

    si c'est ca, alors essaie :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
    // this -> clip a deplacer
    // _parent -> c'est euro
    // _parent.r -> clip qui borne les deplacements de this
     
    startDrag(this, false, _parent.r._x, _parent.r._y, _parent.r._x + _parent.r._width - this._width, _parent.r._y + _parent.r._height - this._height);
    sinon.
    Reexplique ton pb et/ou postes le fla (Cela pourrait aider )

  11. #11
    Membre averti
    Inscrit en
    Mai 2003
    Messages
    17
    Détails du profil
    Informations forums :
    Inscription : Mai 2003
    Messages : 17
    Par défaut
    En fait c'est presque ça :
    J'ai un clip nommé "principal"
    Dans celui-ci j'ai un clip à déplacer ("euro").
    Je lance le drag en cliquant sur un bouton (ce bouton est au même niveau que euro).
    Le rectangle dont je parle c'est simplement celui qui correspond aux paramètres du startDrag (left,top,right,bottom), il n'existe pas réellement, c'est l'image qu'il utilise dans l'aide de Flash.

    Voilà, merci

  12. #12
    Expert confirmé

    Avatar de freegreg
    Profil pro
    Inscrit en
    Août 2002
    Messages
    4 376
    Détails du profil
    Informations personnelles :
    Âge : 47
    Localisation : France, Gard (Languedoc Roussillon)

    Informations forums :
    Inscription : Août 2002
    Messages : 4 376
    Par défaut
    J'ai pas compris ton histoire de bouton (pour commencer le drag).
    Comment tu l'arrete?
    D'habitude, on commence le drag quand on clique sur le movieClip, on l'arrete sur le release.

    Sinon cela doit etre en considerant le clic sur le bouton

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    startDrag(_parent.euro, false, A, B, C, D);

    A = le x de ton "rectangle" par rapport au (0,0) de principal
    B = le y de ton "rectangle" par rapport au (0,0) de principal
    C = A + la longueur de ton "rectangle" par rapport au (0,0) de principal
    D = B + la hauteur de ton "rectangle" par rapport au (0,0) de principal

  13. #13
    Expert confirmé

    Avatar de freegreg
    Profil pro
    Inscrit en
    Août 2002
    Messages
    4 376
    Détails du profil
    Informations personnelles :
    Âge : 47
    Localisation : France, Gard (Languedoc Roussillon)

    Informations forums :
    Inscription : Août 2002
    Messages : 4 376
    Par défaut
    Si tu le fais directement sur le clip

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    euro.onPress = function() { startDrag(this, false, A, B, C, D);    
    }
    euro.onRelease = function() { stopDrag();    
    }

  14. #14
    Membre averti
    Inscrit en
    Mai 2003
    Messages
    17
    Détails du profil
    Informations forums :
    Inscription : Mai 2003
    Messages : 17
    Par défaut
    Merci bien, c'était exactement cette explication qu'il me fallait.`
    Malheureusement, c'est bien ce que j'avais fait et ça ne correspond pas à ma zone.
    Comment faut-il faire pour être sûr que les coordonnées de mon "rectangle" sont bien par rapport au (0,0) de principal ?

    P.S. : mon startDrag se lance à partir d'un bouton qui occupe une partie du clip euro. Il s'arrête quand je relâche le bouton.

  15. #15
    Expert confirmé

    Avatar de freegreg
    Profil pro
    Inscrit en
    Août 2002
    Messages
    4 376
    Détails du profil
    Informations personnelles :
    Âge : 47
    Localisation : France, Gard (Languedoc Roussillon)

    Informations forums :
    Inscription : Août 2002
    Messages : 4 376
    Par défaut
    Peux-tu mettre en ligne ton fla?
    Car là, je vois pas

  16. #16
    Membre averti
    Inscrit en
    Mai 2003
    Messages
    17
    Détails du profil
    Informations forums :
    Inscription : Mai 2003
    Messages : 17
    Par défaut
    Voici mon FLA (il ne ressemble à rien, je l'ai beaucoup épuré...) :

    http://coolbens.free.fr/autre/drag.zip

  17. #17
    Expert confirmé

    Avatar de freegreg
    Profil pro
    Inscrit en
    Août 2002
    Messages
    4 376
    Détails du profil
    Informations personnelles :
    Âge : 47
    Localisation : France, Gard (Languedoc Roussillon)

    Informations forums :
    Inscription : Août 2002
    Messages : 4 376
    Par défaut
    Donc si je comprend bien, le pb se situe à l'est et au sud.
    Tu voudrais que cela bloque quand il n'y a plus de carte.
    C'est ça?

  18. #18
    Membre averti
    Inscrit en
    Mai 2003
    Messages
    17
    Détails du profil
    Informations forums :
    Inscription : Mai 2003
    Messages : 17
    Par défaut
    Exact. En fait, si tu veux un ordre d'idée de la zone c'est le rectangle sur le calque "aperçu rect contraintes".

  19. #19
    Membre averti
    Inscrit en
    Mai 2003
    Messages
    17
    Détails du profil
    Informations forums :
    Inscription : Mai 2003
    Messages : 17
    Par défaut
    C'est bon, ça marche !

    En fait, il faut prendre les coordonnées "centrées" (avec l'origine au centre) et non avec l'origine en haut à gauche.

    Merci

  20. #20
    Expert confirmé

    Avatar de freegreg
    Profil pro
    Inscrit en
    Août 2002
    Messages
    4 376
    Détails du profil
    Informations personnelles :
    Âge : 47
    Localisation : France, Gard (Languedoc Roussillon)

    Informations forums :
    Inscription : Août 2002
    Messages : 4 376
    Par défaut


    Citation Envoyé par Coolbens
    En fait, il faut prendre les coordonnées "centrées" (avec l'origine au centre) et non avec l'origine en haut à gauche.
    C'est ce que je viens de rendre compte

    Je ne les aime pas donc je ne les utilisent jamais!
    C'est vrai que quand on mélange les 2, ca fait des résultats J'aurai du y pensé

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [FLASH][SOCKET] XMLsocket sous Flash
    Par Muetdhiver dans le forum Dynamique
    Réponses: 3
    Dernier message: 29/10/2009, 11h38
  2. [FLASH 8] StartDrag et contraintes
    Par serwol dans le forum Flash
    Réponses: 9
    Dernier message: 04/06/2006, 22h29
  3. [FLASH MX] Pb avec startDrag()
    Par anksou dans le forum Flash
    Réponses: 4
    Dernier message: 23/11/2004, 09h36
  4. Flash & Builder ?
    Par Vince78 dans le forum C++Builder
    Réponses: 4
    Dernier message: 06/06/2002, 08h56
  5. Passage de parametre a une anim Flash 5
    Par debug dans le forum Intégration
    Réponses: 4
    Dernier message: 03/06/2002, 17h59

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo