Mise à jour: Mon expérience avec AS1/2 est limité et cela est basé sur ce que je l'ai vu dans les forums AS. D'après les commentaires, il semble que les deuxième et troisième méthodes de traitement des événements sont valides dans AS1 et AS2.
La syntaxe de la gestion des événements sont différents:
ActionScript 3
addEventListener(MouseEvent.MOUSE_UP, handleClick);
private function handleClick(e:MouseEvent):void
{
//Just do it
}
ActionScript 2
onRelease = function():Void{ //it's not void - it's Void
//do something
}
ActionScript 1
on(release){
//do something
}
Vous trouverez peut-être cette aide page FUL: Migrating from AS2 to AS3
AS3 façon d'ajouter une nouvelle enfants est new
suivie addChild
var s:Sprite = new Sprite();
var tf:TextField = new TextField();
this.addChild(s);
s.addChild(tf);
Il fut un temps createMovieClip
et createTextField
méthodes plus tôt - pas sûr version exacte bien.
_root.createTextField("mytext",1,100,100,300,100);
//that is name, depth, x, y, width, height
mytext.multiline = true;
mytext.wordWrap = true;
mytext.border = false;
Plus tôt, si vous aviez la propriété name
d'un enfant, vous pouvez accéder à l'enfant du parent à l'aide parent.childName
même si la classe parent n'a pas une propriété appelée childName
. Avec AS3, il est possible que la classe parente ait une propriété appelée childName
(de type approprié) et que vous lui ayez assigné la référence de l'enfant (ou que vous ayez créé cette propriété sur la classe dynamique MovieClip
). Il y a getChildByName()
- mais il retournera le premier enfant avec le prénom (et il est possible d'avoir des noms en double dans une liste d'enfants).
effectivement vos 2e et 3e extraits sont valides à la fois AS1 et AS2. – Cay
Je ne pense pas que l'extrait AS2 soit valide dans AS1, mais l'extrait AS1 est valide dans AS2. Cependant, je n'ai aucun moyen de tester cela. –
onRelease = function() ... était parfaitement valide dans Flash 6, et AS2 a été introduit dans Flash 7;) – Cay