Visualizzazione dei risultati da 1 a 4 su 4
  1. #1
    Utente di HTML.it
    Registrato dal
    Oct 2005
    Messaggi
    272

    [AS3] Clonare un Movie Clip passato come parametro

    Nel pannello delle opzioni ho scritto:
    codice:
    var objAttch:rect = new rect();
    var prova:multiAttach = new multiAttach(rectCnt,objAttch,60,10);
    passando il Movie Clip come parametro.

    Se, all'interno di un ciclo for, volessi clonare questo Movie Clip ad ogni iterazione come dovrei fare?

  2. #2
    Utente di HTML.it L'avatar di and80
    Registrato dal
    Mar 2003
    Messaggi
    15,182
    esattamente allo stesso modo, ma dentro ad un ciclo for
    il nome dell'istanza viene sovrascritto, ma non viene sovrascritto l'oggetto e quindi il nuovo creato viene aggiunto agli altri
    il problema si ha semmai dopo, quando tenti di cercare l'oggetto per gestirlo in altre situazioni, ma questa dovrebbe essere una cosa delegata alla classe "multiAttach", in ogni caso poi non puoi cercarlo attraverso il nome di istanza

    per capire meglio, per assurdo potresti tranquillamente eliminare la prima riga e fare direttamente così

    Codice PHP:
    var prova:multiAttach = new multiAttach(rectCnt, new rect(), 6010); 
    ma ripeto che il problema va posto semmai dopo, in caso sia necessario rintracciare i clip per una qualsiasi necessità

  3. #3
    Utente di HTML.it
    Registrato dal
    Oct 2005
    Messaggi
    272
    Ok sei stato chiarissimo e sono anche d'accordo: il problema è rintracciare i clip attachati!
    Il mio dilemma era però passare come parametro un clip preso dalla libreria e clonarlo senza bisogno che la classe multiAttach debba conoscere che appartenga alla classe rect.
    Mi spiego meglio, se la riga
    var objAttch:rect = new rect();
    si trova dentro multiAttach gli oggetti clonati dovranno appartenere ad una classe che si chiama in questo modo, oppure dovrei andare a modificare manualmente la riga se la classe di appartenenza si dovesse chiamare diversamente.
    Se invece l'oggetto passato viene clonato a prescindere dal nome della sua classe, credo che si raggiunga un livello di astrazione superiore.
    Secondo te è un ragionamento utile o da inesperto di AS3 (e di OOP)? :master:

  4. #4
    Utente di HTML.it L'avatar di and80
    Registrato dal
    Mar 2003
    Messaggi
    15,182
    vero, abbiamo a che fare con AS3, quindi dovresti avere un warning se passi un "rect" invece che un "MovieClip"

    visto che credo che "rect" sia una derivazione di MovieClip, direi che puoi fare tranquillamente così

    Codice PHP:
    var objAttch:MovieClip = new rect() as MovieClip;
    var 
    prova:multiAttach = new multiAttach(rectCnt,objAttch,60,10); 

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.