Visualizzazione dei risultati da 1 a 5 su 5
  1. #1
    Utente di HTML.it L'avatar di Ashry
    Registrato dal
    Jul 2002
    Messaggi
    586

    Actionscript 3.0 addChilde ed eventi

    Ciao a tutti, sto cercando di creare un menu tramite actionscript 3.0 ma ho qualche problema ad assocoare l'evento al pulsante

    io creo il menu in questo modo

    var totalButtons:uint = 20;
    var i:uint;
    for (i = 0; i < totalButtons; i++) {
    var mc:bottone = new bottone();
    mc.name = "pulsante"+i;
    mc.x = 22+(20 * i);
    mc.y = 39;
    addChild(mc);

    }

    ad ognuno di questi pulsani dovrei associare un evento che richiama delle funzioni, non capisco come si fa ad associare l'evento all'istanza; pensavo di inserire una cosa di questo tipo nel ciclo ma ovviamente ho problemi con il nome dell'istanza

    istanzapulsante.addEventListener(MouseEvent.CLICK, eventLoadImg);
    function eventLoadImg(event:MouseEvent):void {

    //nome dell'immagine da caricare
    NewImg = "img"+i+".jpg";
    //sposto la barra sotto il pulsante appena selezionato
    focus_mc.x=istanzapulsante.x;
    //richiamo la funzione
    loadOld();
    }

    mi potreste dare una mano?

    Grazie

  2. #2
    Utente di HTML.it L'avatar di and80
    Registrato dal
    Mar 2003
    Messaggi
    15,182
    puoi fare così
    Codice PHP:
    var totalButtons:uint 20;

    function 
    eventLoadImg(event:MouseEvent):void {
        var 
    n:int event.target.variabile;
        
    NewImg "img"+n+".jpg";
        
    focus_mc.event.target.x;
        
    loadOld();
    }
    for (var 
    i:uint 0totalButtonsi++) {
        var 
    mc:bottone = new bottone();
        
    mc.name "pulsante"+i;
        
    mc.variabile i;
        
    mc.22+(20 i);
        
    mc.39;
        
    mc.addEventListener(MouseEvent.CLICKeventLoadImg);
        
    addChild(mc);

    in pratica assegni ad ogni pulsante una variabile da utilizzare all'interno della funzione, quando un determinato tasto viene cliccato
    attraverso event.target ottieni il clip che è stato appena cliccato e assegni a n la variabile appesa in precedenza al clip e così via...

  3. #3
    Utente di HTML.it L'avatar di Ashry
    Registrato dal
    Jul 2002
    Messaggi
    586
    mi dà questo messaggio di errore:
    Impossibile trovare la proprietà variabile su flash.display.SimpleButton e nessun valore predefinito presente.

    l'ho modificato così:

    var totalButtons:uint = 20;

    function eventLoadImg(event:MouseEvent):void {
    var n:String= event.currentTarget.name;
    NewImg = n+".jpg";
    focus_mc.x = event.target.x;
    loadOld();
    trace(NewImg);
    }
    for (var i:uint = 0; i < totalButtons; i++) {
    var mc:bottone = new bottone();
    mc.name = "img"+i;
    var value2:Number = i;
    mc.x = 22+(20 * i);
    mc.y = 39;
    mc.addEventListener(MouseEvent.CLICK, eventLoadImg);
    addChild(mc);
    }

  4. #4
    Utente di HTML.it L'avatar di and80
    Registrato dal
    Mar 2003
    Messaggi
    15,182
    a me funziona correttamente, però ho usato un movieclip e non un simplebutton...

  5. #5
    Utente di HTML.it L'avatar di Ashry
    Registrato dal
    Jul 2002
    Messaggi
    586
    il bottone è in un mc non saprei perchè non funziona, comunque con la modifica ora va

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.