Crear TopMost MovieClip modal
Lunes, 12 de noviembre 2007 Ilustran una técnica para crear símbolos (MovieClip) los procedimientos que se utilizan de manera similar a los componentes Alert y de Window de Flash. El objetivo es mostrar un MovieClip sobre todos los demás, discapacitante - y - el acceso a la zona de abajo y cualquier otro objeto / componente presente. Para ser honestos he logrado todo esto haciendo un poco de ingeniería inversa "de los códigos de Adobe, que son claras! No me han resistido ![]()
El Artefizio que se utiliza para deshabilitar cualquiera de los presentes la interfaz por debajo de nuestro MovieClip, es crear un MovieClip transparente que tenga toda la zona del escenario. En este MovieClip, que será prácticamente no visible ganchos de un método de "vacío" en la onRelease teniendo cuidado de establecer el useHandCursor propiedad a false
Ante todo, crear una película con cualquier interfaz en el escenario principal:

Esta consiste en un TextField un TextInput y un botón para abrir nuestros modal MovieClip: nuestra emergente personalizado.
Cuando agregamos nuestro símbolo utilizando attachMovie() lo que veremos será:

Me fui en rojo alpha=10 el fantasma MovieClip que cuelga por debajo de la interfaz con el fin de ser visto. Nuestro símbolo que se puede hacer de ninguna manera, acaba de establecer en las propiedades de un identificador (por ejemplo, moviemodal) y la clase de 2,0 a MovieClipModal:

Esta es la clase MovieClipModal:
- / *
- **
- ** Archivo: MovieClipModal.as
- ** Autor: Giovambattista Fazioli (g.fazioli @ undolog.com)
- ** Web: http://www.undolog.com
- ** Email: g (punto) Fazioli (a) Undolog (punto) (com)
- ** Creado: 08/11/2007 23.57
- ** Modificado: 08/11/2007 23.57
- **
- **
- * /
- managers . DepthManager ; mx de importación. directivos. DepthManager;
- / /
- / /
- / /
- / /
- / /
- Función MovieClipModal () (
- / /
- onLoad = _onLoad;
- = onunload _onUnload;
- / /
- width ; = __movieWidth escenario. anchura;
- height ; = __movieHeight escenario. altura;
- )
- / *
- ** _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 (este)
- ; __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 - Envoltura número
- * /
- onKeyDown ( ) { onKeyDown private function () (
- Key . getCode ( ) == Key . TAB ) { if (key. getCode () == Key. TAB) (
- / / Selection.setFocus ();
- )
- )
- /************************************************* *******************************************
- ** OnResize () evento
- ************************************************** ******************************************/
- onResize ( ) { private function onResize () (
- Number = Math . round ( this . __movieWidth ) ; ow var: Número = Matemáticas. ronda (this. __movieWidth);
- Number = Math . round ( this . __movieHeight ) ; var ay: Número = Matemáticas. ronda (this. __movieHeight);
- / /
- )
- )
Esta clase es sólo un ejemplo y puede ser ampliado y mejorado. Sin embargo, ya que funciona bien. De particular interés es el uso de DepthManager para la colocación en las profundidades de nuestro modal MovieClip, gracias a kTopmost constante (líneas 43 y 52).
Tenga en cuenta también la presencia (comentario en esta versión) a las filas 41 y 70 de un controlador adicional para el teclado. Nuestro pop-ups, de hecho, contiene un botón que elimina un posible inesperado en este sistema. La adición del fantasma MovieClip (líneas 43 a 57) y el suceso relacionado con Artefizio onRelease() no impide que algunos movimientos desde el teclado, como pulsar la tecla TAB. En algunos casos, por lo tanto, puede ser necesario a la actividad del teclado antes de interceptar a desviar en otros lugares, como la restauración de fuego a un control interno para nuestros modal MovieClip.













Undolog  »Blog Archive » Creación de TopMost MovieClip modal ...
Ilustran una técnica para crear símbolos (MovieClip) los procedimientos que se utilizan de manera similar a los componentes y la ventana de alerta de Flash. Lâ € ™ objetivo es mostrar un MovieClip sobre todos los demás, discapacitante - incluso - € ™ lâ € ™ acceso a la zona subyacentes ...