
Cette année, c'est un spécial de Noël, car il est le premier du père de deux merveilleux (et épuisant) des jumeaux!


Cette année, c'est un spécial de Noël, car il est le premier du père de deux merveilleux (et épuisant) des jumeaux!

Cher Père Noël Adobe,
même s'il a déjà reçu deux patchs pour Flash CS3 (version 9.0.2), certains troubles de son utilisation ont fait leur apparition que dans tous les logiciels dans le monde, en particulier dans le présent communiqué que les modifications qu'elle a subies un très grand nombre.
1 | ( MouseEvent . CLICK , function ( e ) { myfunc ( ) ; } ) ; . myBtn addEventListener ( MouseEvent CLIC, function (e) {mafonction ();}.); |
Ajout des accolades où il doit être:
1 2 | ( MouseEvent . CLICK , function ( e ) { myfunc ( ) ; } ) ; . myBtn addEventListener ( MouseEvent CLIC, function (e) {mafonction ();}.); // < -- chi te l'ha detto?! } / / <- Qui vous a dit?! |
Il vaudrait donc mieux utiliser la syntaxe:
1 |


Cependant, à Noël, c'est tous mieux ... alors, mon cher Père Noël Adobe, nous regardons de l'avant les mises à jour futures.
FreeTextBox est un éditeur HTML écrit en JavaScript, pour ASP.NET. Cette version, la 4.0 bêta 1 est compatible avec IE, Mozilla et Firefox sur toutes les plateformes. Comme d'autres éditeurs (voir: éditeur WYSIWYG pour le Web ) vous permet de définir son apparence et instruments. Bien que pour ASP.NET, cadre par moi intact, je déclare pour sa douceur de vivre. Cependant, le péché, est disponible en deux versions: une gratuite et une taxe!
Enfin, avec ActionScript 3.0 ne sont plus avoir deux la gestion différente des événements comme ils le faisaient avant ActionScript 2.0 (voir: la gestion de l'événement: des similitudes entre Flash et Javascript ). La méthode addEventListener() , omniprésent dans la nouvelle architecture permet de gérer de nouvelles et exceptionnellement nettoyer tous les événements possibles, même les plus personnelles. La nouvelle organisation dans le package vous permet d'importer les événements que nous desservons et de traiter chacun de façon égale:
1 2 3 4 | / / Événements . KeyboardEvent ; flash.events importation. KeyboardEvent ; . MouseEvent ; flash.events importation. MouseEvent ; . Event ; flash.events importation. événements ; |
Flash CS3 a tant d'innovations, y compris le «bizarre» de préciser, à compiler quelques conseils sur l'écriture de code. Ce qui se passe, par exemple, lorsque nous traitons avec des objets TextField . J'ai dû ajouter une chaîne à la fin d'un champ TextField avec la notation classique:
1 | + = "Stringa aggiunta" ; . mioTextField_txt texte + = "chaîne en ajoutant"; |
Mais ce n'est ActionScript 3.0, au moment de remplir le film, je me suis senti (Avertissement) - ou recommandés:
Attention: 3551: ajout de texte à un TextField avec + = est plusieurs fois plus lent que d'utiliser la méthode TextField.appendText ().
Refroidir! Voyons le fait de la méthode SYNOPSIS appendText() dit en réalité:
) applicata a una proprietà
text(ad esempio<strong>someTextField.text += moreText</strong>), in particolare nel caso di un campo di testo con una quantità di contenuto significativa. Ajoute la chaîne spécifiée parnewTextà la fin de la zone de texte. Cette méthode est plus efficace qu'un affectation d'addition (+=) propriétés appliquées à untext(par exemple<strong>someTextField.text += moreText</strong>), en particulier dans le cas d'un champ de texte avec une quantité importante de contenu.
Nous faire confiance? Pour vérifier la sécurité:
1 2 3 4 5 6 7 8 9 |
Temps: 9360 - sur ma machine, en mode debug. Essayons comme conseillé par le compilateur:
1 2 3 4 5 6 7 8 9 |
Temps: 8415 ![]()
Rien de grand ... mais c'est vrai! ). La méthode appendText() est plus rapide et plus puissant pré-incrémentale de l'opérateur ( += ). Pourquoi? La raison la plus évidente est la suivante: l'opérateur ( += ) fonctionne sur n'importe quel type de données. Par ailleurs, dans un langage OO cet opérateur n'est pas structuré comme en C, mais est tout simplement "oggettato". En C + +, par exemple, vous pouvez écraser (remplacer) l'opérateur dans le cadre de la structure de la langue objet lui-même. En fin de compte appendText() est plus rapide parce que son objectif est de «fixer» à une chaîne et n'a donc pas faire beaucoup de «questions» en elle. L'opérateur ( += ), cependant, doit travailler pour n'importe quel type de données et n'est donc pas optimisé pour les cordes. En C, au contraire, l'opérateur ( += ) est une fonction à un niveau bas et sera toujours plus rapide qu'un appel à une fonction.
ActionScript 3.0 introduit un certain nombre d'outils formidables de communication, dont certaines sont totalement nouvelle, certains révisés et améliorés à partir de versions précédentes d'ActionScript. Nous commençons à voir comment elle modifie la façon dont vous interagissez avec un serveur Web dans le cas d'une simple communication entre Flash et une page PHP avec un XML de réponse. Tout d'abord, l'objet XML n'existe plus! Dans les classes ActionScript 3.0 nouvelles ont été introduites, dont certaines sont dédiées à «compatibilité ascendante».
Remarque: La classe XML (avec les classes connexes) à partir d'ActionScript 2.0 ont été renommées XMLDocument et transférées à l'flash.xml paquet. Il est inclus dans ActionScript 3.0 pour assurer la compatibilité avec les versions précédentes.
usando il metodo sendAndLoad() dell'oggetto LoadVars (vedi: Flash: LoadVars e XML per inviare dati in POST ). Dans ActionScript 2.0 communication avec un serveur Web a souvent été résolu par l'exploitation de la combinaison des objets LoadVars et XML, en utilisant la méthode sendAndLoad() d'objet LoadVars (voir: Flash: LoadVars et XML pour envoyer des données dans POST ). Maintenant, les choses changent, mais que vous venez de s'habituer à de nouveaux noms et des objets. Comme indiqué dans le manuel, en fait:

Tout a commencé à partir d'ici ... salutations à mon ordinateur personnel d'abord, comme il a été annoncé à l'époque que même si il est maintenant techniquement dépassé, restera toujours inégalée dans l'âme et la mémoire d'un grand nombre!
En raison de sa capacité à communiquer avec le serveur, l'objet (XHR) XmlHttpRequest, utilisé dans la technologie Ajax (qui signifie Asynchronous JavaScript and XML, ce qui devrait être prononcé "egiacs« Même si nous Italiens préfèrent "aiacs"), a un verrou de sécurité qui vous empêche d'exécuter des applications en dehors du domaine dans lequel elle opère. Cette protection est nécessaire pour empêcher Javascript injection (techniques de «injection» de code extrêmement dangereux, afin de casser le système) de différents types, avec l'objectif ultime de «pause» dans le système.
Cette limite est désormais sérieusement prise en considération et que vous pensez, en quelque sorte, de le résoudre - objet XmlHttpRequest directement - sans compromettre la sécurité (voir aussi: troisième proposition de cross-site des extensions de XMLHttpRequest ).
Toutefois, la situation aujourd'hui est comme suit:
Le site Adobe.it est renouvelé, il est d'effacer l'hybride Adobe-Macromedia a fait immédiatement après l'acquisition de la société de logiciels de Flash! Fichier de pagination originale (à l'extrémité gauche), l'utilisation de DHTML et Flash, bien sûr.
| | |
Toutes les sections ont été redessinés avec une utilisation originale de l'arrière-plan. De rinavigare absolument !
Certains lecteurs m'ont demandé comment il a été créé le flocon de neige, tellement réaliste, les fêtes de Noël Widget . Ceux qui ont téléchargé le code source, vous le savez probablement déjà ... mais il était vraiment simple. D'abord, j'ai choisi l'outil Pinceau dans Flash et j'ai dessiné un point.
![]() | ![]() |
Je me suis tourné cela en un symbole et j'ai appliqué deux effets dans le bon ordre: coniques et le flou:
![]() | ![]() |
Le résultat a été: 
A ce MovieClip (symbole) associé à une classe simple, je CNeve , ce qui crée effectivement l'intelligence de l'agrafe elle-même:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 | MovieClip { CNeve classe étend MovieClip { _interval ; privé _interval var; _maxy : Number ; privé _maxy var: Nombre ; / / CNeve fonction () { this , "_move" , 25 ) ; _interval = setInterval (this, "_move", 25); round ( ( Stage . height + 256 ) / 2 ) + _getRndRange ( - 20 , - 7 ) ; _maxy = Math . ronde (( Stade hauteur + 256) / 2.) + _getRndRange (- 20, - 7); } / / _getRndRange ( min : Number , max : Number ) : Number { _getRndRange fonction privée (min: Nombre max: Nombre ): Nombre { Number = Math . floor ( Math . random ( ) * ( max - min + 1 ) ) + min ; randomNum var: Nombre = Math . étage ( Math random () * (max - min + 1).) + min; randomNum retour; } / / _move ( ) { _move fonction privée () { 1 , 5 ) ; _y + = _getRndRange (1, 5); _getRndRange ( - 50 , 50 ) ) > 0 ) ? 1 : - 1 ; _x + = ((_getRndRange (- 50, 50))> 0) 1: -? 1; 1 , 5 ) ; _rotation + = _getRndRange (1, 5); _y > _maxy ) { si (_y> _maxy) { _interval ) ; clearInterval (_interval); } ; updateAfterEvent (); } } |
La méthode _move() contient l'intelligence de l'agrafe, qui est la fonction d'une chute, extrêmement simple. En faisant varier la fonction aléatoire _x += ((_getRndRange(-50, 50))>0) ? 1 : -1;, si può aggiungere un effetto effetto vento, cioè i fiocchi cadono con una pendenza particolare. _x += ((_getRndRange(-50, 50))>0) ? 1 : -1;, par exemple en insérant un _getRndRange(-550, 50), vous pouvez ajouter un effet de vent effet, c'est à dire les flocons tomber avec une pente particulière. En particulier, il peut envoyer les flocons gauche et à droite en utilisant un code de ce type:
1 | _getRndRange ( _getRndRange ( - 350 , - 50 ) , _getRndRange ( 50 , 350 ) ) ) > 0 ) ? 1 : - 1 ; _x + = ((_getRndRange (_getRndRange (- 350, - 50), _getRndRange (50, 350)))> 0) 1: - 1;? |
La rotation ( _rotation += _getRndRange(1, 5); ), puis, donne un détail à la suite de l'agrafe elle-même.
e uno scale randomico, per avere fiocchi di neve di diverse dimensioni. Quand je crée un arc (voir la fonction creaFiocco() ci-dessous) J'ai aussi ajouté un alpha=90 et un escalier randomico, d'avoir des flocons de neige de différentes tailles.
1 2 3 4 5 6 7 8 9 10 11 12 | / / Créer base creaFiocco fonction () { 20 , 100 ) ; var s = plageAleatoire (20, 100); = randRange ( - Math . floor ( ( Stage . width - 320 ) / 2 ) , Math . round ( ( Stage . width + 320 ) / 2 ) ) ; var x = plageAleatoire (- Math . floor (( Stade . largeur - 320) / 2), Math . ronde (( Stade largeur + 320) / 2).); = - Math . floor ( ( ( Stage . height - 256 ) / 2 ) ) - 10 ; var = y - Math . étage ((( Stade hauteur - 256) / 2).) - 10; "neve" , "neve_" + index , index , { _x : x , _y : y , _xscale : s , _yscale : s , _alpha : 90 } ) ; . c_mc attachMovie ("neige", "neve_" + index, index, {_x: x, _y: y, _xscale: s, _yscale: s, _alpha: 90}); index + +; index > 1000 ) { if (index> 1000) { ; index = 1; , 2 ) ; c_mc createEmptyMovieClip = ("c_mc", 2); } } |
Et c'est tout ...
J'ai oublié ... Meilleurs vœux à tous et bonnes fêtes ... ![]()
Derniers Commentaires
Gabriel : Bonjour, article intéressant. J'aurais besoin de quelque chose de similaire, mais avec quelques modifications. Dans un ...
sebastian : la part de la Grande - merci!
Sujet : très utile en effet! Je l'ai essayé et il est juste ce dont j'avais besoin. Maintenant, je me demande comment puis-je obtenir ...
vik : Avec l'aide stratégique!
Pepper : Salut, je ne sais pas si vous êtes l'un des créateurs du plugin WP Bannerize. J'ai repéré un ...