Paqueteflash.display
Clasepublic class Stage
HerenciaStage Inheritance DisplayObjectContainer Inheritance InteractiveObject Inheritance DisplayObject Inheritance EventDispatcher Inheritance Object

Versión del lenguaje: ActionScript 3.0
Versión del reproductor: Flash Player 9

La clase Stage representa el área de dibujo principal. El escenario representa toda el área en la que se muestra el contenido de Flash®.

No es posible obtener acceso al objeto Stage de forma global. Es necesario acceder a él a través de la propiedad stage de una instancia de DisplayObject.

La clase Stage tiene diversas clases ascendientes (DisplayObjectContainer, InteractiveObject, DisplayObject y EventDispatcher) de las que hereda propiedades y métodos. Muchas de estas propiedades y métodos no son aplicables a los objetos Stage o exigen comprobaciones de seguridad cuando se les llama en un objeto Stage. Las propiedades y los métodos que exigen comprobaciones de seguridad se documentan como parte de la clase Stage.

Además, las siguientes propiedades heredadas no son aplicables a los objetos Stage. Si intenta establecerlas, se emitirá un error IllegalOperationError. Estas propiedades siempre pueden leerse, pero dado que no pueden establecerse, siempre contienen valores predeterminados.

Ver los ejemplos

Véase también

Clases principales de visualización
Configuración de las propiedades de Stage


Propiedades públicas
 PropiedadDefinido por
 InheritedaccessibilityProperties : AccessibilityProperties
Las opciones de accesibilidad actuales para este objeto de visualización.
DisplayObject
  align : String
Un valor de la clase StageAlign que especifica la alineación del escenario en Flash Player o el navegador.
Stage
 Inheritedalpha : Number
Indica el valor de transparencia alfa del objeto especificado.
DisplayObject
 InheritedblendMode : String
Un valor de la clase BlendMode que especifica el modo de mezcla que debe utilizarse.
DisplayObject
 InheritedcacheAsBitmap : Boolean
Si se define como true, Flash Player deja en caché una representación interna de mapa de bits del objeto de visualización.
DisplayObject
 Inheritedconstructor : Object
Una referencia a la clase de objeto o función constructora para una instancia de objeto determinada.
Object
 InheritedcontextMenu : ContextMenu
Especifica el menú contextual asociado a este objeto.
InteractiveObject
  displayState : String
Un valor de la clase StageDisplayState que especifica el estado de visualización se utilizará.
Stage
 InheriteddoubleClickEnabled : Boolean
Especifica si este objeto recibe eventos doubleClick.
InteractiveObject
 Inheritedfilters : Array
Matriz indexada que contiene todos los objetos de filtro actualmente asociados con el objeto de visualización.
DisplayObject
  focus : InteractiveObject
El objeto interactivo que está seleccionado por el teclado; o null si no se ha establecido la selección o si el objeto seleccionado pertenece a un entorno limitado de seguridad al que el objeto que origina la llamada no dispone de acceso.
Stage
 InheritedfocusRect : Object
Especifica si este objeto muestra un rectángulo de selección.
InteractiveObject
  frameRate : Number
Obtiene y establece la velocidad de fotogramas del escenario.
Stage
  fullScreenHeight : uint
[read-only] Devuelve la altura del monitor que se utilizará cuando se pase al tamaño de pantalla completa, si ese estado se activa inmediatamente.
Stage
  fullScreenSourceRect : Rectangle
Establece Flash Player para que ajuste una región concreta del escenario al modo de pantalla completa.
Stage
  fullScreenWidth : uint
[read-only] Devuelve el ancho del monitor que se utilizará cuando se pase al tamaño de pantalla completa, si ese estado se activa inmediatamente.
Stage
  height : Number
Indica la altura del objeto de visualización, expresada en píxeles.
Stage
 InheritedloaderInfo : LoaderInfo
[read-only] Devuelve un objeto LoaderInfo que contiene información sobre la carga del archivo al que pertenece este objeto de visualización.
DisplayObject
 Inheritedmask : DisplayObject
El objeto de visualización que origina la llamada se enmascara mediante el objeto mask especificado.
DisplayObject
  mouseChildren : Boolean
Determina si los elementos secundarios del objeto están habilitados para ratón.
Stage
 InheritedmouseEnabled : Boolean
Especifica si este objeto recibe mensajes de ratón.
InteractiveObject
 InheritedmouseX : Number
[read-only] Indica la coordenada x de la posición del ratón en píxeles.
DisplayObject
 InheritedmouseY : Number
[read-only] Indica la coordenada y de la posición del ratón en píxeles.
DisplayObject
 Inheritedname : String
Indica el nombre de instancia de DisplayObject.
DisplayObject
  numChildren : int
[read-only] Devuelve el número de elementos secundarios de este objeto.
Stage
 InheritedopaqueBackground : Object
Especifica si el objeto de visualización es opaco con un determinado color de fondo.
DisplayObject
 Inheritedparent : DisplayObjectContainer
[read-only] Indica el objeto DisplayObjectContainer que contiene este objeto de visualización.
DisplayObject
 Inheritedprototype : Object
[static] Una referencia al objeto prototipo de una clase u objeto de función.
Object
  quality : String
Valor de la clase StageQuality que especifica la calidad de representación que utiliza Flash Player.
Stage
 Inheritedroot : DisplayObject
[read-only] Para un objeto de visualización en un archivo SWF cargado, la propiedad root es el objeto de visualización de nivel más alto en la parte de la estructura de árbol de la lista de visualización representada por dicho archivo SWF.
DisplayObject
 Inheritedrotation : Number
Indica el giro de la instancia de DisplayObject, expresado en grados, con respecto a su orientación original.
DisplayObject
 Inheritedscale9Grid : Rectangle
La cuadrícula de escala aplicada actualmente.
DisplayObject
  scaleMode : String
Un valor de la clase StageScaleMode que especifica el modo de escala que debe utilizarse.
Stage
 InheritedscaleX : Number
Indica la escala horizontal (percentage) del objeto aplicada desde el punto de registro.
DisplayObject
 InheritedscaleY : Number
Indica la escala vertical (percentage) de un objeto aplicada desde el punto de registro del objeto.
DisplayObject
 InheritedscrollRect : Rectangle
Los límites del rectángulo de desplazamiento del objeto de visualización.
DisplayObject
  showDefaultContextMenu : Boolean
Especifica si deben mostrarse u ocultarse los elementos predeterminados del menú contextual de Flash Player.
Stage
 Inheritedstage : Stage
[read-only] El escenario del objeto de visualización.
DisplayObject
  stageFocusRect : Boolean
Especifica si los objetos deben mostrar un borde brillante cuando están seleccionados.
Stage
  stageHeight : int
La altura actual del escenario en píxeles.
Stage
  stageWidth : int
Especifica la anchura actual del escenario en píxeles.
Stage
  tabChildren : Boolean
Determina si los elementos secundarios del objeto están habilitados para tabulación.
Stage
 InheritedtabEnabled : Boolean
Especifica si este objeto está en el orden de tabulación.
InteractiveObject
 InheritedtabIndex : int
Especifica el orden de tabulación de los objetos de un archivo SWF.
InteractiveObject
  textSnapshot : TextSnapshot
[read-only] Devuelve un objeto TextSnapshot para esta instancia de DisplayObjectContainer.
Stage
 Inheritedtransform : Transform
Objeto con propiedades pertenecientes a una matriz, transformación de color y límites de píxel de un objeto de visualización.
DisplayObject
 Inheritedvisible : Boolean
Indica si el objeto de visualización es visible.
DisplayObject
  width : Number
Indica la anchura del objeto de visualización, expresada en píxeles.
Stage
 Inheritedx : Number
Indica la coordenada x de la instancia de DisplayObject en relación a las coordenadas locales del DisplayObjectContainer principal.
DisplayObject
 Inheritedy : Number
Indica la coordenada y de la instancia de DisplayObject en relación a las coordenadas locales del DisplayObjectContainer principal.
DisplayObject
Métodos públicos
 MétodoDefinido por
  
Añade una instancia secundaria de DisplayObject a esta instancia de DisplayObjectContainer.
Stage
  
Añade una instancia secundaria de DisplayObject a esta instancia de DisplayObjectContainer.
Stage
  
addEventListener(type:String, listener:Function, useCapture:Boolean = false, priority:int = 0, useWeakReference:Boolean = false):void
Registra un objeto de detector de eventos con un objeto EventDispatcher, de modo que el detector reciba la notificación de un evento.
Stage
 Inherited
Indica si las restricciones de seguridad provocarían la omisión de objetos de visualización de la lista devuelta al llamar al método DisplayObjectContainer.getObjectsUnderPoint() con el punto point especificado.
DisplayObjectContainer
 Inherited
Determina si el objeto de visualización especificado es un elemento secundario de la instancia de DisplayObjectContainer o la propia instancia.
DisplayObjectContainer
  
Distribuye un evento en el flujo del evento.
Stage
 Inherited
getBounds(targetCoordinateSpace:DisplayObject):Rectangle
Devuelve un rectángulo que define el área del objeto de visualización relativo al sistema de coordenadas del objeto targetCoordinateSpace.
DisplayObject
 Inherited
Devuelve la instancia del objeto de visualización secundario que sale del índice especificado.
DisplayObjectContainer
 Inherited
Devuelve el objeto de visualización secundario que sale con el nombre especificado.
DisplayObjectContainer
 Inherited
Devuelve la posición de índice de una instancia secundaria de DisplayObject.
DisplayObjectContainer
 Inherited
Devuelve una matriz de objetos que quedan bajo el punto especificado y son elementos secundarios (o terciarios, etc.) de esta instancia de DisplayObjectContainer.
DisplayObjectContainer
 Inherited
getRect(targetCoordinateSpace:DisplayObject):Rectangle
Devuelve un rectángulo que define el límite del objeto de visualización, basado en el sistema de coordenadas definido por el parámetro targetCoordinateSpace, excluyendo los trazos en las formas.
DisplayObject
 Inherited
Convierte el objeto point de las coordenadas del escenario (globales) en las coordenadas del objeto de visualización (locales).
DisplayObject
  
Comprueba si el objeto EventDispatcher tiene detectores registrados para un tipo concreto de evento.
Stage
 Inherited
Indica si un objeto tiene definida una propiedad especificada.
Object
 Inherited
Evalúa el objeto de visualización para comprobar si se solapa o presenta un punto de intersección con el objeto de visualización obj.
DisplayObject
 Inherited
hitTestPoint(x:Number, y:Number, shapeFlag:Boolean = false):Boolean
Evalúa el objeto de visualización para comprobar si se solapa o presenta un punto de intersección con el punto especificado por los parámetros x e y.
DisplayObject
  
Al llamar al método invalidate(), se indica a Flash Player que avise a los objetos de visualización de la próxima oportunidad que tendrán para representar la lista de visualización (por ejemplo, cuando la cabeza lectora avanza a un nuevo fotograma).
Stage
  
Determina si la propiedad Stage.focus devuelve null por motivos de seguridad.
Stage
 Inherited
Indica si hay una instancia de la clase Object en la cadena de prototipo del objeto especificado como parámetro.
Object
 Inherited
Convierte el objeto point de coordenadas del objeto de visualización (locales) en coordenadas del escenario (globales).
DisplayObject
 Inherited
Indica si existe la propiedad especificada y si es enumerable.
Object
 Inherited
Elimina la instancia child de DisplayObject especificada de la lista de elementos secundarios de la instancia de DisplayObjectContainer.
DisplayObjectContainer
  
Elimina una instancia de DisplayObject secundaria de la posición de índice especificada en la lista de elementos secundarios de DisplayObjectContainer.
Stage
 Inherited
removeEventListener(type:String, listener:Function, useCapture:Boolean = false):void
Elimina un detector del objeto EventDispatcher.
EventDispatcher
  
Cambia la posición de un elemento secundario existente en el contendor de objeto de visualización.
Stage
 Inherited
Establece la disponibilidad de una propiedad dinámica para operaciones de bucle.
Object
 Inherited
Intercambia el orden z (de delante a atrás) de los dos objetos secundarios especificados.
DisplayObjectContainer
  
swapChildrenAt(index1:int, index2:int):void
Intercambia el orden z (de delante a atrás) de los objetos secundarios situados en las posiciones de índice especificadas en la lista de elementos secundarios.
Stage
 Inherited
Devuelve la representación de cadena del objeto especificado.
Object
 Inherited
Devuelve el valor simple del objeto especificado.
Object
  
Comprueba si hay registrado un detector de eventos con este objeto EventDispatcher o con cualquiera de sus ascendientes para el tipo de evento concreto.
Stage
Eventos
 Evento Resumen Definido por
 Inherited Se distribuye cuando Flash Player queda seleccionado por el sistema operativo y pasa a estar activo.EventDispatcher
 Inherited Se distribuye cuando un objeto de visualización se añade a la lista de visualización.DisplayObject
 Inherited Se distribuye cuando un objeto de visualización se añade a la lista de visualización del escenario, bien directamente o a través de un subárbol que contiene el objeto de visualización.DisplayObject
 Inherited Se distribuye cuando un usuario pulsa y suelta el botón principal del dispositivo de señalización sobre el mismo objeto InteractiveObject.InteractiveObject
 Inherited Se distribuye cuando Flash Player deja de estar seleccionado por el sistema operativo y pasa a estar inactivo.EventDispatcher
 Inherited Se distribuye cuando un usuario pulsa y suelta el botón principal de un dispositivo de señalización dos veces en una sucesión rápida sobre el mismo objeto InteractiveObject cuando el indicador doubleClickEnabled de dicho objeto se ha definido como true.InteractiveObject
 Inherited Se distribuye cuando la cabeza lectora entra en un nuevo fotograma.DisplayObject
 Inherited Se distribuye después de que un objeto de visualización quede seleccionado.InteractiveObject
 Inherited Se distribuye después de que un objeto de visualización deje de estar seleccionado.InteractiveObject
   Se distribuye por Flash Player cuando el objeto Stage pasa a, o deja de estar en, modo de pantalla completa.Stage
 Inherited Se distribuye cuando el usuario pulsa una tecla.InteractiveObject
 Inherited Se distribuye cuando el usuario intenta cambiar la selección empleando la navegación mediante teclado.InteractiveObject
 Inherited Se distribuye cuando el usuario suelta una tecla.InteractiveObject
 Inherited Se distribuye cuando el usuario pulsa el botón del dispositivo de señalización sobre una instancia de InteractiveObject en la ventana de Flash Player.InteractiveObject
 Inherited Se distribuye cuando el usuario intenta cambiar la selección empleando un dispositivo de señalización.InteractiveObject
   Lo distribuye el objeto Stage cuando el puntero del ratón sale del área de la ventana de Flash Player.Stage
 Inherited Se distribuye cuando el usuario mueve el dispositivo de señalización mientras éste se encuentra sobre un InteractiveObject.InteractiveObject
 Inherited Se distribuye cuando el usuario mueve un dispositivo de señalización hacia el exterior de una instancia de InteractiveObject.InteractiveObject
 Inherited Se distribuye cuando el usuario pasa el dispositivo de señalización por encima de una instancia de InteractiveObject en la ventana de Flash Player.InteractiveObject
 Inherited Se distribuye cuando el usuario suelta el botón del dispositivo de señalización sobre una instancia de InteractiveObject en la ventana de Flash Player.InteractiveObject
 Inherited Se distribuye cuando se hace girar una rueda de ratón sobre una instancia de InteractiveObject en la ventana de Flash Player.InteractiveObject
 Inherited Se distribuye cuando un objeto de visualización se va a eliminar de la lista de visualización.DisplayObject
 Inherited Se distribuye cuando un objeto de visualización se va a eliminar de la lista de visualización, bien directamente o a través de la eliminación de un subárbol que contiene el objeto de visualización.DisplayObject
 Inherited Se distribuye cuando la lista de visualización se va a actualizar y mostrar.DisplayObject
   Se distribuye cuando la propiedad scaleMode del objeto Stage se define como StageScaleMode.NO_SCALE y se cambia el tamaño del archivo SWF.Stage
 Inherited Se distribuye cuando el usuario mueve un dispositivo de señalización hacia el exterior de una instancia de InteractiveObject.InteractiveObject
 Inherited Se distribuye cuando el usuario mueve un dispositivo de señalización sobre una instancia de InteractiveObject.InteractiveObject
 Inherited Se distribuye cuando cambia el valor del indicador tabChildren del objeto.InteractiveObject
 Inherited Se distribuye cuando cambia el indicador tabEnabled del objeto.InteractiveObject
 Inherited Se distribuye cuando cambia el valor de la propiedad tabIndex del objeto.InteractiveObject
Información sobre propiedades
alignpropiedad
align:String  [read-write]

Versión del lenguaje: ActionScript 3.0
Versión del reproductor: Flash Player 9

Un valor de la clase StageAlign que especifica la alineación del escenario en Flash Player o el navegador. Los valores siguientes son válidos:

ValorAlineación verticalHorizontal
StageAlign.TOPSuperiorCentro
StageAlign.BOTTOMInferiorCentro
StageAlign.LEFTCentroIzquierda
StageAlign.RIGHTCentroDerecha
StageAlign.TOP_LEFTSuperiorIzquierda
StageAlign.TOP_RIGHTSuperiorDerecha
StageAlign.BOTTOM_LEFTInferiorIzquierda
StageAlign.BOTTOM_RIGHTInferiorDerecha

La propiedad align sólo está disponible para un objeto que esté en el mismo entorno limitado de seguridad que el propietario del objeto Stage (el archivo SWF principal). Para evitar esto, el propietario de Stage puede conceder permiso al dominio del objeto que origina la llamada llamando al método Security.allowDomain() o Security.alowInsecureDomain(). Para más información, consulte el capítulo "Seguridad" de Programación con ActionScript 3.0.


Implementación
    public function get align():String
    public function set align(value:String):void

Véase también

displayStatepropiedad 
displayState:String  [read-write]

Versión del lenguaje: ActionScript 3.0
Versión del reproductor: Flash Player 9.0.28.0

Un valor de la clase StageDisplayState que especifica el estado de visualización se utilizará. Los valores siguientes son válidos:

El comportamiento de la escala de la película en modo de pantalla completa viene determinado por el valor scaleMode (definido por la propiedad Stage.scaleMode de los valores de etiqueta embed del archivo SWF en el archivo HTML). Si la propiedad scaleMode se define como noScale mientras Flash Player cambia a modo de pantalla completa, se actualizan las propiedades width y height del escenario y Flash Player distribuye el evento Stage.resize.

Las siguientes restricciones se aplican a los archivos SWF que se reproducen en una página HTML (no aquellos que utilizan el reproductor Flash Player autónomo):


Implementación
    public function get displayState():String
    public function set displayState(value:String):void

Emite
SecurityError — Al llamar a la propiedad displayState de un objeto Stage, se emite una excepción para cualquier origen de llamada que no esté en el mismo entorno limitado de seguridad que el propietario del objeto Stage (el archivo SWF principal). Para evitar esto, el propietario de Stage puede conceder permiso al dominio del origen de llamada llamando al método Security.allowDomain() o Security.allowInsecureDomain(). Para más información, consulte el capítulo "Seguridad" de Programación con ActionScript 3.0. Si se intenta establecer la propiedad displayState mientras se muestra el cuadro de diálogo de configuración, sin una respuesta de usuario, o si el atributo allowFullScreen de la etiqueta HTML param o embed no se establece como true, se emite un error de seguridad.

Véase también


Ejemplo

En el ejemplo siguiente, se crea una demostración interactiva de cómo crear una experiencia de pantalla completa mediante la modificación de la propiedad displayState.

Nota: debido a restricciones de seguridad, la pantalla completa sólo se puede activar en determinados casos como, por ejemplo, si el usuario ha hecho clic o presionado una tecla. Cuando se ejecuta en un navegador, la propiedad allowFullScreen se debe establecer como true.

package {
    import flash.display.Sprite;
    import flash.display.Stage;
    import flash.events.*;
    import flash.net.NetConnection;
    import flash.net.NetStream;
    import flash.media.Video;

    public class FullScreenExample extends Sprite
    {
        private var videoURL:String = "testVideo.flv";
        private var connection:NetConnection;
        private var stream:NetStream;
        private var video:Video;

        public function FullScreenExample() {
            connection = new NetConnection();
            connection.addEventListener(NetStatusEvent.NET_STATUS, netStatusHandler);
            connection.addEventListener(SecurityErrorEvent.SECURITY_ERROR, securityErrorHandler);
            connection.connect(null);

            loaderInfo.addEventListener(Event.INIT, createMouseListener);
        }

        private function createMouseListener(event:Event):void {
            stage.addEventListener(MouseEvent.CLICK,toggleFullScreen);
        }

        private function toggleFullScreen(event:MouseEvent):void {
            switch(stage.displayState) {
                case "normal":
                    stage.displayState = "fullScreen";
                    break;
                case "fullScreen":
                default:
                    stage.displayState = "normal";
                    break;
            }
        }

        // Video related:
        private function netStatusHandler(event:NetStatusEvent):void {
            switch (event.info.code) {
                case "NetConnection.Connect.Success":
                    connectStream();
                    break;
                case "NetStream.Play.StreamNotFound":
                    trace("Unable to locate video: " + videoURL);
                    break;
            }
        }
        private function connectStream():void {
            var stream:NetStream = new NetStream(connection);
            stream.addEventListener(NetStatusEvent.NET_STATUS, netStatusHandler);
            stream.addEventListener(AsyncErrorEvent.ASYNC_ERROR, asyncErrorHandler);

            video = new Video(stage.stageWidth,stage.stageHeight);
            video.attachNetStream(stream);
            stream.play(videoURL);
            addChild(video);
        }
        private function securityErrorHandler(event:SecurityErrorEvent):void {
            trace("securityErrorHandler: " + event);
        }
        private function asyncErrorHandler(event:AsyncErrorEvent):void {
            // ignore AsyncErrorEvent events.
        }
    }
}
focuspropiedad 
focus:InteractiveObject  [read-write]

Versión del lenguaje: ActionScript 3.0
Versión del reproductor: Flash Player 9

El objeto interactivo que está seleccionado por el teclado; o null si no se ha establecido la selección o si el objeto seleccionado pertenece a un entorno limitado de seguridad al que el objeto que origina la llamada no dispone de acceso.


Implementación
    public function get focus():InteractiveObject
    public function set focus(value:InteractiveObject):void

Emite
Error — Emite un error si no puede establecerse la selección para este destino.
frameRatepropiedad 
frameRate:Number  [read-write]

Versión del lenguaje: ActionScript 3.0
Versión del reproductor: Flash Player 9

Obtiene y establece la velocidad de fotogramas del escenario. La velocidad de fotogramas se expresa en fotogramas por segundo. De manera predeterminada, la velocidad se establece con la velocidad de fotogramas del primer archivo SWF cargado. El intervalo válido de velocidades de fotogramas es de 0,01 a 1000 fotogramas por segundo.

Nota: es posible que Flash Player no pueda seguir configuraciones altas de velocidad de fotogramas, bien porque la plataforma de destino no sea lo suficientemente rápida o porque el reproductor esté sincronizado con la temporización en blanco vertical del dispositivo de visualización (normalmente 60 Hz en dispositivos LCD). En algunos casos, una plataforma de destino puede también optar por reducir la velocidad de fotogramas máxima si prevé un uso intensivo de la CPU.


Implementación
    public function get frameRate():Number
    public function set frameRate(value:Number):void

Emite
SecurityError — Al llamar a la propiedad frameRate de un objeto Stage, se emite una excepción para cualquier origen de llamada que no esté en el mismo entorno limitado de seguridad que el propietario del objeto Stage (el archivo SWF principal). Para evitar esto, el propietario de Stage puede conceder permiso al dominio del origen de llamada llamando al método Security.allowDomain() o Security.allowInsecureDomain(). Para más información, consulte el capítulo "Seguridad" de Programación con ActionScript 3.0.
fullScreenHeightpropiedad 
fullScreenHeight:uint  [read-only]

Versión del lenguaje: ActionScript 3.0

Devuelve la altura del monitor que se utilizará cuando se pase al tamaño de pantalla completa, si ese estado se activa inmediatamente. Si el usuario tiene varios monitores, se emplea el que muestra la mayoría del escenario en ese momento.

Nota: si el usuario tiene la posibilidad de mover el navegador de un monitor a otro entre la recuperación del valor y el paso al tamaño de pantalla completa, el valor podría ser incorrecto. Si recupera el valor en un controlador de eventos que establece Stage.displayState en StageDisplayState.FULL_SCREEN, el valor será correcto.

Ésta es la altura en píxeles del monitor y es igual a la altura del escenario si Stage.align se establece en StageAlign.TOP_LEFT y Stage.scaleMode en StageScaleMode.NO_SCALE.

Versión del reproductor: Flash Player 9 Update 3.


Implementación
    public function get fullScreenHeight():uint

Véase también


Ejemplo

Este ejemplo crea un rectángulo verde del tamaño del escenario y coloca encima un cuadrado rojo que se activa como botón. Al hacer clic en el cuadrado rojo, se activa el controlador de eventos enterFullScreen(), que establece la propiedad fullScreenSourceRect y activa el modo de pantalla completa. Para establecer la propiedad fullScreenSourceRect, el controlador de eventos comienza con la ubicación y las dimensiones del cuadrado rojo. A continuación, compara la proporción (ancho dividido entre altura) del cuadrado rojo con la proporción del escenario en pantalla completa (ancho y altura) para poder ampliar el rectángulo (fullScreenSourceRect) y ajustarlo a la proporción de la pantalla. El resultado es que el cuadrado rojo ocupa toda la altura del monitor con el fondo verde visible a cada lado. Si no coinciden las proporciones, el color de fondo del escenario, que de manera predeterminada es blanco, se verá a cada lado en lugar del fondo verde.

Nota: pruebe este ejemplo en el navegador. En el cuadro de diálogo Configuración de publicación de Flash, en la ficha HTML, seleccione la plantilla Sólo Flash - Permitir pantalla completa. Especifique la versión de Flash Player para Update 3, y asegúrese de que los formatos Flash y HTML se seleccionan en la ficha Formatos. A continuación, publique y abra el archivo HTML resultante en el navegador.


import flash.display.Sprite;
import flash.display.Stage;
import flash.display.StageDisplayState;
import flash.events.MouseEvent;
import flash.geom.Rectangle;

// cover the stage with a green rectangle
var greenRect:Sprite = new Sprite();
greenRect.graphics.beginFill(0x00FF00);
greenRect.graphics.drawRect(0, 0, stage.stageWidth, stage.stageHeight);
addChild(greenRect);

// create red square on stage, turn it into a button for going to full screen
var redSquare:Sprite = new Sprite();
redSquare.graphics.beginFill(0xFF0000);
redSquare.graphics.drawRect(0, 0, 300, 300);
redSquare.x = 50;
redSquare.y = 50;
redSquare.addEventListener(MouseEvent.CLICK, enterFullScreen);
redSquare.buttonMode = true;
addChild(redSquare);

function enterFullScreen(e:MouseEvent):void
{
    // we will go to full screen zoomed in on the red square
    var redSquare:Sprite = e.target as Sprite;
    var fullScreenRect:Rectangle = new Rectangle(redSquare.x, redSquare.y, redSquare.width, redSquare.height);

    // calculate aspect ratio of the red square
    var rectAspectRatio:Number = fullScreenRect.width / fullScreenRect.height;

    // calculate aspect ratio of the screen
    var screenAspectRatio:Number = stage.fullScreenWidth / stage.fullScreenHeight;

    // change the fullScreenRect so that it covers the entire screen, keeping it centered on the redSquare
    // try commenting out this section to see what happens if you do not fix the aspect ratio.
    if (rectAspectRatio > screenAspectRatio) {
         var newHeight:Number = fullScreenRect.width / screenAspectRatio;
         fullScreenRect.y -= ((newHeight - fullScreenRect.height) / 2);
        fullScreenRect.height = newHeight;
    } else if (rectAspectRatio < screenAspectRatio) {
        var newWidth:Number = fullScreenRect.height * screenAspectRatio;
        fullScreenRect.x -= ((newWidth - fullScreenRect.width) / 2);
        fullScreenRect.width = newWidth;
    }

    // go to full screen
    stage.fullScreenSourceRect = fullScreenRect;
    stage.displayState = StageDisplayState.FULL_SCREEN;
}
fullScreenSourceRectpropiedad 
fullScreenSourceRect:Rectangle  [read-write]

Versión del lenguaje: ActionScript 3.0

Establece Flash Player para que ajuste una región concreta en el modo de pantalla completa. Si está disponible, Flash Player aplica la escala de hardware, que utiliza la tarjeta gráfica y de vídeo del equipo del usuario, con lo que normalmente muestra el contenido con mayor rapidez que con la escala de software.

Cuando esta propiedad se establece en un rectángulo válido y la propiedad displayState se define en modo de pantalla completa, Flash Player ajusta el área especificada. El tamaño real del escenario expresado en píxeles dentro de ActionScript no cambia. Flash Player aplica un límite mínimo para el tamaño del rectángulo de modo que se ajuste al mensaje estándar "Press Esc to exit full-screen mode". Este límite suele ser 260 x 30 píxeles, pero puede variar según la plataforma y la versión de Flash Player.

Esta propiedad sólo se puede definir cuando Flash Player no está en modo de pantalla completa. Para utilizar correctamente esta propiedad, deberá establecerla primero, después establecer la propiedad displayState en el modo de pantalla completa, como se muestra en los ejemplos de código.

Para activar la escala, establezca la propiedad fullScreenSourceRect en un objeto rectangle:

  // valid, will enable hardware scaling
  stage.fullScreenSourceRect = new Rectangle(0,0,320,240);
  

Para desactivar la escala, establezca fullScreenSourceRect=null en ActionScript 3.0 y undefined en ActionScript 2.0.

  stage.fullScreenSourceRect = null;
  

El usuario final también puede seleccionar dentro de la configuración de pantalla de Flash Player la desactivación de la escala de hardware, activada de manera predeterminada. Para más información, consulte www.adobe.com/go/display_settings_es.

Versión del reproductor: Flash Player 9 Update 3.


Implementación
    public function get fullScreenSourceRect():Rectangle
    public function set fullScreenSourceRect(value:Rectangle):void

Véase también


Ejemplo

Para sacar provecho de la escala de hardware, debe establecer todo el escenario o parte de él en modo de pantalla completa. El siguiente código ActionScript 3.0 establece todo el escenario en modo de pantalla completa:

import flash.geom.*;
{
  stage.fullScreenSourceRect = new Rectangle(0,0,320,240);
  stage.displayState = StageDisplayState.FULL_SCREEN;
}

En el ejemplo siguiente, el usuario puede cambiar entre reproducir un vídeo en modo de pantalla completa o normal haciendo clic en el escenario. Si el SWF de este ejemplo se ejecuta en Flash Player versión 9, Update 3 o posterior, utilizará la aceleración de hardware para mejorar el ajuste a pantalla completa.

Antes de utilizar el modo de pantalla completa con la escala de hardware, deben cumplirse las condiciones siguientes:

  1. Se necesita Flash Player versión 9, Update 3 o posterior, así como una herramienta de edición compatible.
  2. Se deben modificar las plantillas HTML para admitir la pantalla completa. El atributo allowFullScreen se debe establecer en true para las etiquetas object y embed. (Los scripts que generan etiquetas que incorporan SWF también deben permitir pantalla completa.) Para ver una muestra de archivos que se pueden utilizar con Flex Builder, consulte el artículo Exploring full-screen mode in Flash Player 9.
  3. Su aplicación debe tener permiso y acceso a un archivo de vídeo FLV. En este ejemplo, se asume que el archivo de vídeo Flash (FLV) se encuentra en el mismo directorio que el archivo SWF.
  4. El usuario debe permitir el acceso a pantalla completa.
  5. Para información adicional sobre la escala de hardware, consulte el artículo Full-Screen Hardware Scaling para Flash Player.

Se carga un archivo FLV mediante los objetos NetConnection y NetStream. Dado que el archivo FLV está en el mismo directorio que el archivo SWF y se conectará a través de HTTP, el parámetro del método NetConnection.connect() se establece en null. El objeto connect NetConnection informa de su estado al distribuir un evento netStatus que invoca el método netStatusHandler(). El método netStatusHandler() comprueba si la conexión se realizó con éxito e invoca el método connectStream(), que crea un objeto NetStream que adopta el objeto NetConnection como parámetro. También crea un objeto video y le asocia el objeto NetStream. A continuación, se añade el objeto video a la lista de visualización y se establece el flujo para que se reproduzca. Dado que el archivo de vídeo FLV no contiene información de metadatos ni de puntos de referencia, se distribuirá un evento AsyncError. Se debe configurar un detector para controlar el evento. En este caso, se configura el detector y se omite el evento. También se configura otro detector del evento netStatus para el objeto NetStream. Mostrará un mensaje de error si no se ha encontrado el flujo. (Tenga en cuenta que se podría utilizar netStatusHandler() para controlar un número cualquiera de datos de diferentes estados registrados para el flujo o la conexión.)

Cuando las propiedades y métodos de un archivo SWF cargado son accesibles, se invoca el método createMouseListener(). Configura un detector de eventos para cuando se hace clic con el ratón en el escenario. El método toggleFullScreen() comprueba si el estado de visualización está en modo de pantalla completa o normal. Si es normal, el tamaño del objeto video se establece con el tamaño del flujo de vídeo. La propiedad fullScreenSourceRect se establece en un rectángulo que coincide con las dimensiones del objeto video. A continuación, la propiedad Stage.displayMode se establece en pantalla completa, lo que produce que el vídeo del rectángulo de origen se expanda para llenar el área de pantalla completa. Si se cumplen los requisitos del sistema, se utilizará el hardware de gráficos del equipo para mejorar el rendimiento de la representación de vídeo en pantalla completa y se establecerá el estado de visualización en modo de pantalla completa. Para capturar cualquier error de seguridad que pudiese ocurrir mientras se cambia al modo de pantalla completa, se utiliza try...catch. (Tenga en cuenta que el estado de visualización se debe establecer en el modo de pantalla completa después de definir la propiedad fullScreenSourceRect.) Antes de cambiar al modo de pantalla normal, la anchura y altura del objeto video se establecen de nuevo con los valores del objeto video original guardado. De lo contrario, los cambios realizados en el objeto video para el modo de pantalla completa determinarán la anchura y altura.

package {
    import flash.display.Sprite;
    import flash.display.StageDisplayState;
    import flash.media.Video;
    import flash.net.NetConnection;
    import flash.net.NetStream;
    import flash.events.NetStatusEvent;
    import flash.events.AsyncErrorEvent;
    import flash.events.SecurityErrorEvent;
    import flash.events.MouseEvent;
    import flash.events.Event;
    import flash.geom.Rectangle;

    public class Stage_fullScreenSourceRectExample2 extends Sprite {
        private var videoURL:String = "testVideo1.flv";
        private var connection:NetConnection;
        private var stream:NetStream;
        private var myVideo:Video;
        private    var savedWidth:uint;
        private    var savedHeight:uint;

        public function Stage_fullScreenSourceRectExample2() {

            connection = new NetConnection();
             connection.addEventListener(NetStatusEvent.NET_STATUS, netStatusHandler);
            connection.addEventListener(SecurityErrorEvent.SECURITY_ERROR, securityErrorHandler);
            connection.connect(null);

            loaderInfo.addEventListener(Event.INIT, createMouseListener);
        }

        private function createMouseListener(event:Event):void {
            stage.addEventListener(MouseEvent.CLICK, toggleFullScreen);
        }

        private function toggleFullScreen(event:MouseEvent):void {

            if(stage.displayState == StageDisplayState.NORMAL) {
                myVideo.width = myVideo.videoWidth;
                  myVideo.height = myVideo.videoHeight;

                try {
                    stage.fullScreenSourceRect = new Rectangle(myVideo.x, myVideo.y,
                                                           myVideo.width, myVideo.height);
                     stage.displayState = StageDisplayState.FULL_SCREEN;

                 } catch (e:SecurityError) {
                     trace ("A security error occurred while switching to full screen: " + event);
                    myVideo.width = savedWidth;
                    myVideo.height = savedHeight;
                 }

            }else {
                myVideo.width = savedWidth;
                myVideo.height = savedHeight;
                stage.displayState = StageDisplayState.NORMAL;
            }
        }

       private function netStatusHandler(event:NetStatusEvent):void {
            switch (event.info.code) {
                case "NetConnection.Connect.Success":
                    connectStream();
                    break;
                case "NetStream.Play.StreamNotFound":
                    trace ("Unable to locate video: " + videoURL);
                    break;
            }
        }

       private function connectStream():void {
            var stream:NetStream = new NetStream(connection);
            stream.addEventListener(NetStatusEvent.NET_STATUS, netStatusHandler);
            stream.addEventListener(AsyncErrorEvent.ASYNC_ERROR, asyncErrorHandler);

             myVideo = new Video();
            myVideo.attachNetStream(stream);
            stream.play(videoURL);

            savedWidth = myVideo.width;
            savedHeight = myVideo.height;

            addChild(myVideo);
        }

        private function securityErrorHandler(event:SecurityErrorEvent):void {
            trace("securityErrorHandler: " + event);
        }

        private function asyncErrorHandler(event:AsyncErrorEvent):void {

        }
    }
}
fullScreenWidthpropiedad 
fullScreenWidth:uint  [read-only]

Versión del lenguaje: ActionScript 3.0

Devuelve el ancho del monitor que se utilizará cuando se pase al tamaño de pantalla completa, si ese estado se activa inmediatamente. Si el usuario tiene varios monitores, se emplea el que muestra la mayoría del escenario en ese momento.

Nota: si el usuario tiene la posibilidad de mover el navegador de un monitor a otro entre la recuperación del valor y el paso al tamaño de pantalla completa, el valor podría ser incorrecto. Si recupera el valor en un controlador de eventos que establece Stage.displayState en StageDisplayState.FULL_SCREEN, el valor será correcto.

Éste es el ancho en píxeles del monitor y es igual al ancho del escenario si Stage.align se establece en StageAlign.TOP_LEFT y Stage.scaleMode en StageScaleMode.NO_SCALE.

Versión del reproductor: Flash Player 9 Update 3.


Implementación
    public function get fullScreenWidth():uint

Véase también


Ejemplo

Este ejemplo crea un rectángulo verde del tamaño del escenario y coloca encima un cuadrado rojo que se activa como botón. Al hacer clic en el cuadrado rojo, se activa el controlador de eventos enterFullScreen(), que establece la propiedad fullScreenSourceRect y activa el modo de pantalla completa. Para establecer la propiedad fullScreenSourceRect, el controlador de eventos comienza con la ubicación y las dimensiones del cuadrado rojo. A continuación, compara la proporción (ancho dividido entre altura) del cuadrado rojo con la proporción del escenario en pantalla completa (ancho y altura) para poder ampliar el rectángulo (fullScreenSourceRect) y ajustarlo a la proporción de la pantalla. El resultado es que el cuadrado rojo ocupa toda la altura del monitor con el fondo verde visible a cada lado. Si no coinciden las proporciones, el color de fondo del escenario, que de manera predeterminada es blanco, se verá a cada lado en lugar del fondo verde.

Nota: pruebe este ejemplo en el navegador. En el cuadro de diálogo Configuración de publicación de Flash, en la ficha HTML, seleccione la plantilla Sólo Flash - Permitir pantalla completa. Especifique la versión de Flash Player para Update 3, y asegúrese de que los formatos Flash y HTML están seleccionados en la ficha Formatos. A continuación, publique y abra el archivo HTML resultante en el navegador.


import flash.display.Sprite;
import flash.display.Stage;
import flash.display.StageDisplayState;
import flash.events.MouseEvent;
import flash.geom.Rectangle;

// cover the stage with a green rectangle
var greenRect:Sprite = new Sprite();
greenRect.graphics.beginFill(0x00FF00);
greenRect.graphics.drawRect(0, 0, stage.stageWidth, stage.stageHeight);
addChild(greenRect);

// create red square on stage, turn it into a button for going to full screen
var redSquare:Sprite = new Sprite();
redSquare.graphics.beginFill(0xFF0000);
redSquare.graphics.drawRect(0, 0, 300, 300);
redSquare.x = 50;
redSquare.y = 50;
redSquare.addEventListener(MouseEvent.CLICK, enterFullScreen);
redSquare.buttonMode = true;
addChild(redSquare);

function enterFullScreen(e:MouseEvent):void
{
    // we will go to full screen zoomed in on the red square
    var redSquare:Sprite = e.target as Sprite;
    var fullScreenRect:Rectangle = new Rectangle(redSquare.x, redSquare.y, redSquare.width, redSquare.height);

    // calculate aspect ratio of the red square
    var rectAspectRatio:Number = fullScreenRect.width / fullScreenRect.height;

    // calculate aspect ratio of the screen
    var screenAspectRatio:Number = stage.fullScreenWidth / stage.fullScreenHeight;

    // change the fullScreenRect so that it covers the entire screen, keeping it centered on the redSquare
    // try commenting out this section to see what happens if you do not fix the aspect ratio.
    if (rectAspectRatio > screenAspectRatio) {
         var newHeight:Number = fullScreenRect.width / screenAspectRatio;
         fullScreenRect.y -= ((newHeight - fullScreenRect.height) / 2);
        fullScreenRect.height = newHeight;
    } else if (rectAspectRatio < screenAspectRatio) {
        var newWidth:Number = fullScreenRect.height * screenAspectRatio;
        fullScreenRect.x -= ((newWidth - fullScreenRect.width) / 2);
        fullScreenRect.width = newWidth;
    }

    // go to full screen
    stage.fullScreenSourceRect = fullScreenRect;
    stage.displayState = StageDisplayState.FULL_SCREEN;
}
heightpropiedad 
height:Number  [read-write]

Versión del lenguaje: ActionScript 3.0
Versión del reproductor: Flash Player 9

Indica la altura del objeto de visualización, expresada en píxeles. La anchura se calcula según los límites del contenido del objeto de visualización. Cuando define la propiedad height, la propiedad scaleY se ajusta en consecuencia, tal y como se muestra en el siguiente código:

 var rect