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

ActionScript 1 & ActionScript 2 Discussion :

problème pour dupliquer un clip enfant vers un autre clip


Sujet :

ActionScript 1 & ActionScript 2

  1. #1
    Nouveau Candidat au Club
    Profil pro
    Inscrit en
    Août 2007
    Messages
    2
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2007
    Messages : 2
    Points : 1
    Points
    1
    Par défaut problème pour dupliquer un clip enfant vers un autre clip
    Bonjour je me retrouve confronté à un problème que je n'avais jamais rencontré jusqu'à présent :
    pour faire schématique j'ai 2 clips, a et b, qui contiennent des sous clips imbriqués (a1, a2 dans a et b1, b2 dans b). dans le clip a1 je charge une image via un script php. Or j'aurais besoin de cette image dans le clip _level0.b.b1. Comment faire sachant que la fonction duplicateMovieClip ne fonctionne pas dans ce cas (en gros si je fais _root.a.a1.duplicateMovieClip(_root.b.b1) ça essaie de me le dupliquer dans un sous niveau du clip a.
    Si quelqu'un a une idée je le remercie d'avance !

  2. #2
    Membre éprouvé
    Avatar de thecaptain
    Homme Profil pro
    Architecte de système d'information
    Inscrit en
    Décembre 2003
    Messages
    919
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Suisse

    Informations professionnelles :
    Activité : Architecte de système d'information

    Informations forums :
    Inscription : Décembre 2003
    Messages : 919
    Points : 1 210
    Points
    1 210
    Par défaut
    Salut et bienvenue sur Developpez

    Tu ne peux pas faire cela avec un duplicateMovieClip... le duplicate ne te permet que de dupliquer dans le même clip que le clip dupliqué. Solution de contournement : passer par un attachMovie

    @++

  3. #3
    Nouveau Candidat au Club
    Profil pro
    Inscrit en
    Août 2007
    Messages
    2
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2007
    Messages : 2
    Points : 1
    Points
    1
    Par défaut
    merci pour ta réponse je vais aller chercher d'autres pistes du coup. Le problème avec attachmovie c'est qu'il fonctionne avec des clips présents dans la bibliothèque, or mes clips sont créés dynamiquement (si par exemple j'ai 140 images ds mon xml externe et bien je crée autant de clips (ces fameux clips que j'aimerais pouvoir attacher sur d'autre clips !). A moins qu'on puisse maintenant créer des clips dans une bibli avec flash8 mais je ne crois pas que ce soit encore possible ..

  4. #4
    Nouveau Candidat au Club
    Profil pro
    Inscrit en
    Février 2009
    Messages
    1
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2009
    Messages : 1
    Points : 1
    Points
    1
    Par défaut Dupliquer clip dans un autre clip lambda
    Bonjour. Je suis actuellement dans le même cas que toi...

    As tu trouvé une réponse à ce problème ?

    Merci d'avance

  5. #5
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Avril 2007
    Messages
    34
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2007
    Messages : 34
    Points : 36
    Points
    36
    Par défaut Moi aussi, même type de problème avec duplicateMovieClip !
    Bonjour !
    Je n'ai toujours pas trouvé de solution !
    Plus concrêtement, je charge un schéma (swf ou jpg) avec loadMovie, sur la cible mc1. J'aimerais pouvoir dupliquer mc1 50 fois, et non pas recharger 50 fois mon schéma !
    Voici le code qui ne marche pas, à copier dans la fenêtre Action de Flash :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
     
    _global.cPathSymboles = "C:/plans";  //Chemin contenant le fichier swf
    var _fichier = 'micro.swf'; // Exemple de fichier à charger, ici dans C:/plans
    var _refContainer:MovieClip; // Container de base des clips à charger
    var _mcImgModel:MovieClip; // MovieClip du modèle à dupliquer
    var _cptImg:Number = 0; // Compteur de clips dupliqués
    var temp:MovieClip; // Référence temporaire du clip dupliqué
     
    // Création des clips vides
    _refContainer=_root.createEmptyMovieClip("container", _root.getNextHighestDepth()); // Container général, au dessus de la racine
    _mcImgModel = _refContainer.createEmptyMovieClip("mcImgModel", _refContainer.getNextHighestDepth()); // Clip du modèle dans "container"
    // Chargement du fichier "c:/plans/micro.swf"
    _mcImgModel.loadMovie(_global.cPathSymboles + '/' + _fichier);
    // Duplication simple du clip modèle : ne marche pas !!!
    temp = _mcImgModel.duplicateMovieClip("mcImg" + 1, _refContainer.getNextHighestDepth()); 
    trace(_mcImgModel); // Retourne _level0.container.mcImgModel
    // modification des propriétés du clip cloné (inopérant !)
    temp._xscale = 50;  
    temp._yscale = 50;
    temp._x = 0;
    temp._y = 0;
    trace(temp); // Retourne bien _level0.container.mcImg1 !!
    // Autre tentative de duplication, par appel de duplique() sur le clip modèle
    _mcImgModel.duplique(2); // Rien ne se produit !!
     
    // Autre essai de duplication, pa onEnterFrame...
    _mcImgModel.onEnterFrame = function(){
    	trace(getBytesLoaded() + "/" + getBytesTotal());
                 // Lorsque le clip chargé par loadMovie est bien chargé
    	if (getBytesLoaded() == getBytesTotal()) {
    		trace("Chargé !!");
    		this.duplique(3); // Ne marche pas !
    		delete this.onEnterFrame;
    	}
    }
     
    // Fonction de duplication de clip, qui ne marche pas non plus !!!
    function duplique(pNb):Void {
    	var i:Number;
     
    	trace("Duplique...");
    	for (i=0; i<pNb; i++ ) {
    		this.duplicateMovieClip("mcImg" + _cptImg, this._parent.getNextHighestDepth());
    		this._parent["mcImg" + _cptImg]._x = 100 * i;
    		this._parent["mcImg" + _cptImg]._xscale=50;
    		trace(this._parent["mcImg" + _cptImg]);
    		_cptImg++;
    	}
    }
    Y'aurait-il un petit géni en ActionScript, pour répondre, en toute modestie, à ce gros problème que tout ceux qui tombent dessus n'arrivent pas à résoudre, alors que c'est quand même un élément clé de la manipulation de clips avec Flash ?... Je suis dépité !

  6. #6
    Membre émérite Avatar de dom_dev
    Profil pro
    Inscrit en
    Février 2006
    Messages
    2 073
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2006
    Messages : 2 073
    Points : 2 338
    Points
    2 338
    Par défaut
    bonjour,
    "attachmovie" fonctionne aussi avec les clips créés dynamiquement.

Discussions similaires

  1. [XL-2007] VBA problème pour passer des données EXCEL vers WORD
    Par nocontrol dans le forum Macros et VBA Excel
    Réponses: 7
    Dernier message: 28/07/2011, 10h01
  2. [Perl/Tk] problème pour faire passer des variables vers une fonction
    Par seben dans le forum Interfaces Graphiques
    Réponses: 2
    Dernier message: 09/03/2009, 15h17
  3. getFrame problème pour dupliquer une frame
    Par nabilous dans le forum Général Java
    Réponses: 5
    Dernier message: 24/10/2008, 16h19
  4. Réponses: 15
    Dernier message: 23/06/2006, 13h57
  5. [Access 2003]Problème pour dupliquer?
    Par steeves5 dans le forum Access
    Réponses: 6
    Dernier message: 24/05/2006, 12h19

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