Créer modale MovieClip TopMost

di Flash. Illustrer une technique pour créer des symboles (MovieClip) composantes modales à être utilisés de façon similaire à l' Alert et la Window de Flash. Le but est de montrer un MovieClip-dessus tous les autres, la désactivation de - bien - l'accès à la base et tout autre objet / composant présent. Pour être honnête, j'ai réalisé qu'en faisant un peu de "reverse engineering de code à partir d'Adobe, qui est en clair! En fait, j'ai résisté ;)

Le artefizio qui est utilisée pour désactiver toutes les interfaces de présenter ci-dessous notre MovieClip, est de créer un MovieClip transparents prennent toute la zone de la scène. a false . A ce MovieClip, qui sera pratiquement pas visible s'enclenche une méthode "vide" sur l'événement onRelease , en prenant soin de définir le useHandCursor aux false .

Tout d'abord, nous créons un film avec n'importe quelle interface de la scène principale:

Interface

e un bottone usato aprire il nostro MovieClip modale: il nostro popUp personalizzato. Il s'agit d'un TextField , un TextInput et un bouton permet d'ouvrir notre modale MovieClip popup sur nos propres.

Lorsque vous allez ajouter notre symbole à l'aide attachMovie() ce que nous allons voir:

MovieClip modale

J'ai quitté en rouge ( alpha=10 ) le fantôme MovieClip qui pend sous l'interface, afin d'être vu. Notre symbole peut être fait en aucune façon, vient de mettre dans les propriétés d'un identifiant (par exemple moviemodal) et la classe 2,0 à MovieClipModal:

Icône Paramètres

Voici la MovieClipModal classe:

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
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
/ *
**
** Dossier: MovieClipModal.as
** Auteur: Giovambattista Fazioli (@ g.fazioli undolog.com)
** Site Web: http://www.undolog.com
** Courriel: g (dot) Fazioli (at) undolog (dot) (COM)
** Création: 08/11/2007 23h57
** Mise à jour: 08/11/2007 23:57
**
**
* /
managers . DepthManager ; . importation mx gestionnaires DepthManager.;
/ /
MovieClip { MovieClipModal classe étend MovieClip {
/ /
__release : String = "1.0" ; __release var privé: Chaîne = "1.0";
/ /
__modal_mc : MovieClip ; private var __modal_mc: MovieClip ;
/ /
__movieWidth : Number = 0 ; __movieWidth var privé: Nombre = 0;
__movieHeight : Number = 0 ; __movieHeight var privé: Nombre = 0;
__left : Number = 0 ; __left var privé: Nombre = 0;
__right : Number = 0 ; __right var privé: Nombre = 0;
__top : Number = 0 ; __top var privé: Nombre = 0;
__bottom : Number = 0 ; __bottom var privé: Nombre = 0;
/ /
Fonction MovieClipModal () {
scaleMode = "noscale" ; Stages scaleMode = "noScale".;
addListener ( this ) ; Stages addListener (this).;
/ /
onLoad = _onLoad;
onUnload = _onUnload;
/ /
width ; __movieWidth = étape . largeur;
height ; __movieHeight = étape . hauteur;
}
/ *
_onLoad ** () - Enveloppez onLoad MovieClip
* /
_onLoad ( ) { _onLoad fonction privée () {
/ / Key.addListener (this);
/ /
"__modal_mc" , DepthManager . kTopmost ) ; . __modal_mc = _root 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 ** () - Enveloppez onUnload MovieClip
* /
_onUnload ( ) { _onUnload fonction privée () {
; . __modal_mc removeMovieClip ();
}
/ *
** OnKeyDown - Key Wrap
* /
onKeyDown ( ) { onKeyDown fonction privée () {
Key . getCode ( ) == Key . TAB ) { if (Key. getCode () == clés. TAB) {
/ / Selection.setFocus ();
}
}
/************************************************* *******************************************
OnResize ** () événement
************************************************** ******************************************/
onResize ( ) { onResize fonction privée () {
Number = Math . round ( Stage . width ) ; var sw: Nombre = Math ronde (. Stade largeur.);
Number = Math . round ( Stage . height ) ; var sh: Nombre = Math ronde (. Stade de hauteur.);
Number = Math . round ( this . __movieWidth ) ; omment var: Nombre = Math . round (this. __movieWidth);
Number = Math . round ( this . __movieHeight ) ; Oh var: Nombre = Math ronde (this. __movieHeight);.
/ /
Math . floor ( ( ( sw - ow ) / 2 ) ) ; __modal_mc _x = -. Math floor (((sw - oe) / 2)).;
Math . floor ( ( ( sh - oh ) / 2 ) ) ; __modal_mc _y = -. Math floor (((sh - h) / 2)).;
. width ; __modal_mc _width =. Stade largeur.;
. height ; __modal_mc _height =. Stade hauteur.;
}
}

Cette classe est seulement un exemple et peut être étendu et amélioré. Mais comme il fonctionne très bien. (righe 43 e 52). D'intérêt particulier est l'utilisation de DepthManager pour le placement dans les profondeurs de notre modale MovieClip, grâce à la constante kTopmost (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. Notre pop-up, en fait, contient un bouton qui élimine une imprévus possibles dans ce système. L'ajout de la MovieClip fantôme (lignes de 43 à 57) et attaché artefizio événement onRelease() n'empêche pas certains mouvements tels que la touche Tab du clavier. Dans certains cas, par conséquent, peuvent être nécessaires pour intercepter les tâches du clavier avant de détourner ailleurs, comme la restauration de feu à un contrôle interne à notre modale MovieClip.

One Response to "Création modale MovieClip TopMost"

  1. 9 décembre 2007 upnews.it :

    undolog  »Blog Archive » Créer MovieClip modale TopMost ...

    Illustrer une technique pour créer des symboles (MovieClip) le mode d'utilisation des composants similaires et Flash fenêtre Alerte. € ™ s objectif est de montrer un MovieClip-dessus tous les autres, la désactivation de - bien - € ™ s l'accès à la zone sous-jacente ... € ™

Laisser un commentaire

XHTML TAG PERMIS: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong> CODE D'INSERTION:
 <pre></pre> // blocco generico <code></code> // blocco generico [cc_actionscript][/cc_actionscript] // Actionscript [cc_actionscript3][/cc_actionscript3] // Actionscript 3 [cc_css][/cc_css] // CSS Style Sheet [cc_html][/cc_html] // HTML [cc_js][/cc_js] // Javascript [cc_objc][/cc_objc] // Objective-C [cc_php][/cc_objc] // PHP [cc_sql][/cc_sql] // SQL 


Arrêtez SOPA