Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 17
  1. #1
    Utente di HTML.it L'avatar di Donovant
    Registrato dal
    Sep 2005
    residenza
    London
    Messaggi
    1,329

    Errore di init di un costruttore, dove sbaglio?

    Ho un piccolo problema....
    Allora stousando questo tipo di libreria (cmq di metodo) -> LINK
    Ho messo nella stessa cartella, "file.fla" "Ripple.as" e l'immagine "IT.jpg"....
    "Rippler.as" si trova nella cartella "be\nascom\flash\graphics".
    Ovviamente sia la cartella "be" che i files "Ripple.as" e "file.fla" e "IT.jpg" sono nella stessa cartella.
    A questo punto nel file "Ripple.as" dove c'è scritto il percorso dell'immagine ho messo semplicemente "IT.jpg" visto che sono nella stessa cartella, e poi in "file.fla" in Documento Classe ho scritto "Ripple".
    Ora quando vado a compilare per provare il filmato mi da
    ERRORE: #1007: Tentativo di creazione di istanza su un elemento diverso da un costruttore.
    at Ripple$iinit()

    L'immagine non l'ho proprio importata, visto che cmq nel codice se la va a prendere.

    Help me....where did I wrong???
    Beati gli smemorati, perchè avranno la meglio anche sui loro errori...

    My gallery: http://donovant.deviantart.com/gallery/

  2. #2
    Utente di HTML.it L'avatar di Donovant
    Registrato dal
    Sep 2005
    residenza
    London
    Messaggi
    1,329
    Più precisamente l'errore segnala:

    TypeError: Error #1007: Tentativo di creazione di istanza su un elemento diverso da un costruttore.
    at Ripple$iinit()[C:\Documents and Settings\Donovant\Desktop\Nuova cartella\src\Ripple.as:26]

    Dove la riga 26 di Ripple.as è :
    codice:
    11) public class Ripple extends Sprite
    12)    {
    13)     	// Embed an image (Flex Builder only, use library in Flash Authoring)
    14)        [Embed(source="../embeds/images/shallow-water-750509-ga.jpg")]
    15)        private var _sourceImage : Class;
    16)        
    17)        private var _target : Bitmap;
    18)        private var _rippler : Rippler;
    19)        
    20)        public function Ripple()
    21)        {
    22)            stage.scaleMode = StageScaleMode.NO_SCALE;
    23)            stage.align = StageAlign.TOP_LEFT;
    24)            
    25)            // create a Bitmap displayobject and add it to the stage 
    *26)            _target = new Bitmap(new _sourceImage().bitmapData);
    27)            addChild(_target);
    Beati gli smemorati, perchè avranno la meglio anche sui loro errori...

    My gallery: http://donovant.deviantart.com/gallery/

  3. #3
    Utente di HTML.it L'avatar di and80
    Registrato dal
    Mar 2003
    Messaggi
    15,182
    Ma nel tuo codice hai commentato l'embed?

  4. #4
    Utente di HTML.it L'avatar di Donovant
    Registrato dal
    Sep 2005
    residenza
    London
    Messaggi
    1,329
    Il "mio" codice non è il mio.... ho preso lo script dal link che avevo dato....cmq il codice è così come l'ho scritto.
    Beati gli smemorati, perchè avranno la meglio anche sui loro errori...

    My gallery: http://donovant.deviantart.com/gallery/

  5. #5
    Utente di HTML.it L'avatar di and80
    Registrato dal
    Mar 2003
    Messaggi
    15,182
    Vedi nel codice c'è scritto che l'embed funziona solo su flex, mentre per flash bisogna usare la libreria.

  6. #6
    Utente di HTML.it L'avatar di Donovant
    Registrato dal
    Sep 2005
    residenza
    London
    Messaggi
    1,329
    Eh bravo lo avevo letto...infatti mi ho pensato che fosse per quello...ma non ho capito cosa devo fare...
    Beati gli smemorati, perchè avranno la meglio anche sui loro errori...

    My gallery: http://donovant.deviantart.com/gallery/

  7. #7
    Utente di HTML.it L'avatar di and80
    Registrato dal
    Mar 2003
    Messaggi
    15,182
    Devi mettere l'immagine in libreria e dargli un nome di concatenamento, poi nella classe modifichi questa riga:
    _target = new Bitmap(new _sourceImage());
    e al posto di "_sourceImage" ci metti il nome di concatenamento che hai dato all'immagine nella libreria e tra parentesi metti (0,0)

  8. #8
    Utente di HTML.it L'avatar di Donovant
    Registrato dal
    Sep 2005
    residenza
    London
    Messaggi
    1,329
    MA devo decommentare qualcosa o viceversa commentare qualcosa, oltre a questo????
    Ho l'immagine nella libreria, l'ho convertita in simbolo, gli ho dato come nome di classe di concatenamento "image" quindi "_target = new Bitmap(new image());"
    Ma non accade nulla, mi da errore:

    1180: Chiamata al metodo non definito addFrameScript.
    1067: Assegnazione forzata implicita di un valore del tipo image a un tipo flash.display:BitmapData non correlato.
    Beati gli smemorati, perchè avranno la meglio anche sui loro errori...

    My gallery: http://donovant.deviantart.com/gallery/

  9. #9
    Utente di HTML.it L'avatar di Donovant
    Registrato dal
    Sep 2005
    residenza
    London
    Messaggi
    1,329
    Allora un errore l'ho tolto, ovvero ho concatenato l'iimagine JPG, che è nella libreria, perchè mi sono accorto che il codice fa uso di Bitmap, quindi ho pensato che la conversione in simbolo non fosse corretta...poi ho inserito (0,0) in image(0,0), visto che mi diceva di mettere 2 valori, ancora permane 1180: Chiamata al metodo non definito addFrameScript.
    Beati gli smemorati, perchè avranno la meglio anche sui loro errori...

    My gallery: http://donovant.deviantart.com/gallery/

  10. #10
    Utente di HTML.it L'avatar di and80
    Registrato dal
    Mar 2003
    Messaggi
    15,182
    Così

    Codice PHP:
    package {
        
    import be.nascom.flash.graphics.Rippler;

        
    import flash.display.Bitmap;
        
    import flash.display.Sprite;
        
    import flash.display.StageAlign;
        
    import flash.display.StageScaleMode;
        
    import flash.events.MouseEvent;

        public class 
    Ripple extends Sprite {

            private var 
    _target Bitmap;
            private var 
    _rippler Rippler;

            public function 
    Ripple () {
                
    stage.scaleMode StageScaleMode.NO_SCALE;
                
    stage.align StageAlign.TOP_LEFT;

                
    // create a Bitmap displayobject and add it to the stage 
                
    _target = new Bitmap(new cascate(0,0));
                
    addChild (_target);

                
    // create the Rippler instance to affect the Bitmap object
                
    _rippler = new Rippler(_target606);

                
    // create the event listener for mouse movements
                
    stage.addEventListener (MouseEvent.MOUSE_MOVEhandleMouseMove);
            }
            
    // creates a ripple at mouse coordinates on mouse movement
            
    private function handleMouseMove (event MouseEvent):void {
                
    // the ripple point of impact is size 20 and has alpha 1
                
    _rippler.drawRipple (_target.mouseX_target.mouseY201);
            }
        }

    Nel mio caso il nome di concatenamento dell'immagine è "cascate" e funziona correttamente.

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.