Créer TopMost MovieClip modale
Lundi, Novembre 12, 2007 Illustrent une technique pour créer des symboles (MovieClip) les procédures à utiliser la même façon que les composants Alert et Window Flash. L'objectif est de montrer un MovieClip dessus tous les autres, la désactivation - ainsi - l'accès à la zone en dessous et tout autre objet / composant présent. Pour être honnête, j'ai réussi tout cela en faisant un peu d'ingénierie «renverser par les codes d'Adobe, qui sont claires! Je n'ai pas résisté ![]()
Le Artefizio qui est utilisé pour désactiver l'interface ci-dessous présente toute notre MovieClip, est de créer un MovieClip transparent, qui tient toute la zone de la scène. Dans ce MovieClip, qui sera pratiquement pas visible crochets en place une méthode de «vide» sur le onRelease en prenant soin de fixer le useHandCursor propriété à false
Tout d'abord nous créons un film avec n'importe quelle interface sur la scène principale:

Il consiste en un TextField une TextInput et un bouton permettant d'ouvrir nos modale MovieClip: notre contextuel personnalisé.
Lorsque nous avons ajouté notre symbole à l'aide attachMovie() nous verrons ce que seront les suivants:

Je suis parti en rouge alpha=10 le fantôme MovieClip qui se bloque sous l'interface de manière à être vu. Notre symbole peut être fait en aucune façon, suffit de définir les propriétés d'un identificateur (par exemple moviemodal) et la classe 2,0 à MovieClipModal:

Voici la classe MovieClipModal:
- / *
- **
- ** Fichier: MovieClipModal.as
- ** Auteur: Giovambattista Fazioli (g.fazioli @ undolog.com)
- ** Web: http://www.undolog.com
- ** Courriel: g (dot) Fazioli (at) Undolog (dot) com ()
- ** Crée: 08/11/2007 23.57
- ** Mise à jour: 08/11/2007 23.57
- **
- **
- * /
- managers . DepthManager ; import mx. gestionnaires. DepthManager;
- / /
- / /
- / /
- / /
- / /
- MovieClipModal function () (
- / /
- onLoad = _onLoad;
- = onunload _onUnload;
- / /
- width ; = __movieWidth scène. largeur;
- height ; = __movieHeight scène. hauteur;
- )
- / *
- ** _onLoad () - Wrap onLoad MovieClip
- * /
- _onLoad ( ) { _onLoad private function () (
- / / AddListener (this);
- / /
- "__modal_mc" , DepthManager . kTopmost ) ; = _root __modal_mc. createEmptyMovieClip ( "__modal_mc" DepthManager. kTopmost);
- ( ) ; __modal_mc. Clear ();
- ( 0xff0000 , 100 ) ; __modal_mc. beginFill (0xFF0000, 100);
- ( 0 , 0 ) ; __modal_mc. moveTo (0, 0);
- ( 100 , 0 ) ; __modal_mc. lineTo (100, 0);
- ( 100 , 100 ) ; __modal_mc. lineTo (100, 100);
- ( 0 , 100 ) ; __modal_mc. lineTo (0, 100);
- ( ) ; __modal_mc. endFill ();
- / /
- this ) ; __modal_mc. setDepthBelow (this);
- ; __modal_mc. _alpha = 10;
- / / _global.style.modalTransparency;
- = __modal_mc . useHandCursor = false ; __modal_mc. tabEnabled = __modal_mc. useHandCursor = false;
- / /
- ( ) { } ; __modal_mc. onRelease = function () ();
- / /
- onResize ();
- )
- / *
- ** _onUnload () - Wrap onUnload MovieClip
- * /
- _onUnload ( ) { _onUnload private function () (
- ; __modal_mc. removeMovieClip ();
- )
- / *
- ** OnKeyDown - Enveloppement pièce
- * /
- onKeyDown ( ) { onKeyDown private function () (
- Key . getCode ( ) == Key . TAB ) { if (key. getCode () == Key. TAB) (
- / / Selection.setFocus ();
- )
- )
- /************************************************* *******************************************
- ** OnResize () événement
- ************************************************** ******************************************/
- onResize ( ) { onResize private function () (
- / /
- )
- )
Cette classe n'est qu'un exemple et peut être étendu et amélioré. Toutefois, comme il fonctionne correctement. Particulièrement intéressant est l'utilisation de DepthManager pour le placement à des profondeurs de notre modale MovieClip, merci à kTopmost constants (lignes 43 et 52).
Notez également la présence (commentaire dans cette version), aux lignes 41 et 70 d'un usager supplémentaire pour le clavier. Nos pop-ups, en fait, contient un bouton qui supprime un inattendus dans ce système. L'ajout de Ghost MovieClip (lignes 43 à 57) et l'événement lié onRelease() Artefizio onRelease() n'empêche pas certains mouvements à partir du clavier en appuyant sur la touche TAB. Dans certains cas, par conséquent, mai nécessité de l'activité de clavier intercepter avant de détourner ailleurs, comme la restauration de l'incendie à un contrôle interne à notre modale MovieClip.













Undolog  »Archives du Blog » Création d'MovieClip TopMost modal ...
Illustrent une technique pour créer des symboles (MovieClip) les procédures à utiliser la même façon que les composants et les fenêtre d'alerte Flash. Lâ € ™ objectif est de montrer un MovieClip dessus tous les autres, la désactivation - même - € ™ lâ € ™ accès à la zone sous-jacente ...