2016-05-13 23 views
0
_root.attachMovie("zoom_btn", "zoom_btn", _root.getNextHighestDepth()); 

zoom_btn.onRelease = function() { 
    _root.attachMovie("blank_btn", "blank_btn", _root.getNextHighestDepth()); 
    blank_btn._x=200; 
} 

//zoom_btn.onRelease(); 

blank_btn.onRelease = function() { 
    trace ("click"); 
} 

Nach Klicken auf "zoom_btn", "blank_btn" Hinzufügen auf der Bühne aus der Bibliothek (Export für AS ist).FLASH AS2 dynamisch hinzugefügt Taste

Wenn ich auf "blank_btn" klicke, passiert nichts. Trace funktioniert nicht.

Was mache ich falsch?

UPD: Wenn ich Linie 8 auskommentiere, funktioniert alles gut.

Antwort

0

Es funktioniert nicht, denn wenn Sie den Handler onRelease auf blank_btn hinzufügen, ist blank_btnundefined. Versuchen Sie, eine trace(blank_btn) hinzuzufügen, bevor Sie Ihre onRelease Funktion definieren, wird es undefined ausgeben.

Wenn Sie zoom_btn.onRelease(); auskommentieren, funktioniert es, weil es bank_btn erstellt, bevor Sie den onRelease Handler hinzufügen.

Wenn Sie das tun wollen, müssen Sie etwas wie zu tun:

zoom_btn = _root.attachMovie("zoom_btn", "zoom_btn", _root.getNextHighestDepth()); 
zoom_btn.onRelease = createBlankButton 

function createBlankButton() { 
    blank_btn = _root.attachMovie("blank_btn", "blank_btn", _root.getNextHighestDepth()); 
    blank_btn._x=200; 
    blank_btn.onRelease = function() { 
     trace ("click"); 
    } 
} 
+0

Thank you! Es hilft mir! –