Les animations Flash redimensionnable: Acte II

Jeudi, Novembre 8, 2007

Revenant à la classe Post StageExt: resizable animations Flash est ici un moyen plus facile pour obtenir le même effet, que dans la bibliothèque de notre film est au moins un composant Flash!

Créer un symbole, un carré rouge 100x100 et le mettre dans la phase d'appel resizeWindow. Remplissez la bibliothèque, le stade, n'importe quel élément, tel qu'un TextInput, et écrire le code suivant dans la première image du film.

ActionScript
  1. managers . SystemManager ; import mx. gestionnaires. SystemManager;
  2. / /
  3. scaleMode = "noscale" Stage. ScaleMode = "noscale"
  4. / /
  5. / / SystemManager.init ();
  6. ( "resize" , resizeWindow ) ; SystemManager. AddEventListener ( "resize", resizeWindow);
  7. / /
  8. = function ( Void ) : Void { resizeWindow. redimensionner = function (Void): Void (
  9. Object = SystemManager . screen ; var s: Object = SystemManager. écran;
  10. _width = s . width ; cela. _width = s. largeur;
  11. _height = s . height ; cela. _height = s. hauteur;
  12. _x = Math . round ( s . x ) ; cela. _x = Math. ronde (S. x);
  13. _y = Math . round ( s . y ) ; cela. _y = Math. ronde (art y);
  14. )
  15. ( ) ; resizeWindow. redimensionner ();

Line 6 (SystemManager.init ();) peut être omis.

Une note intéressante est la présence de deux variables globales qui indiquent la taille de la vidéo d'origine. Ils sont mis en évidence par la présence du composant dans la bibliothèque! Classe StageExt, en effet, exigé au moment de sa création, le passage de la taille du film (transporter un morceau de code):

ActionScript
  1. ] [...]
  2. w : Number , h : Number ) { StageExt fonction (w: Number, h: Number) (
  3. "StageExt::constructor" ) ; trace ( "StageExt:: constructor");
  4. / /
  5. __movieWidth = w;
  6. __movieHeight = h;
  7. / /
  8. addListener ( this ) ; Stage. AddListener (this);
  9. )
  10. ] [...]

Cette étape peut être évité en utilisant _global.origWidth et _global.origHeight fournissant la largeur et la hauteur du MovieClip principal. Le code peut donc être réécrite comme suit:

ActionScript
  1. ] [...]
  2. w : Number , h : Number ) { StageExt fonction (w: Number, h: Number) (
  3. "StageExt::constructor" ) ; trace ( "StageExt:: constructor");
  4. / /
  5. __movieWidth = _global. origWidth;
  6. __movieHeight = _global. origHeight;
  7. / /
  8. addListener ( this ) ; Stage. AddListener (this);
  9. )
  10. ] [...]

Ou si vous préférez, vous pouvez consulter la onResize() toute la méthode onResize() et se réfèrent directement à _global.origWidth et _global.origHeight Toutefois, par souci d'exhaustivité, ces deux variables globales sont définies dans le fichier sous le mx.core.ext arbre mx.core.ext Ils sont fixés en prenant tout simplement la taille de la scène au démarrage, à savoir:

ActionScript
  1. ] [...]
  2. / / La Redimensionne joueur et les centres de la scène. Nous avons besoin de savoir ce que nos originale
  3. / / Taille de la scène est afin de savoir comment nous avons été centré. Notez que le FMX
  4. / / Lecteur Authoring semble faire rapport de manière incorrecte la taille.
  5. _global . _origWidth == undefined ) if (_global. _origWidth == undefined)
  6. (
  7. . width ; _global. origWidth = scène. largeur;
  8. . height ; _global. origHeight = scène. hauteur;
  9. )
  10. ] [...]

Tout cela est évidemment un cas spécial et ne peut être étendu comme un cas général. Toutefois il est intéressant de noter ce type d'enchevêtrement.

Related Post

Cet article était utile?: Per nientePocoAbbastanzaMoltoMoltissimo
Loading ... Chargement ...

Un commentaire pour "Films Flash redimensionnable: Acte II

  1. getAvatar 1.0

Laissez un commentaire

TAG PERMISSIONS XHTML: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong> INSERTION CODE:
 <pre></pre>         // blocco generico [code][/code]       // blocco generico [as][/as]           // Actionscript [css][/css]         // CSS Style Sheet [html][/html]       // HTML [js][/js]           // Javascript [objc][/objc]       // Objective-C [php][/php]         // PHP [sql][/sql]         // SQL