Paquete | flash.display |
Clase | public final class Screen |
Herencia | Screen EventDispatcher Object |
Versión del lenguaje: | ActionScript 3.0 |
Versiones de motor de ejecución: | AIR 1.0 |
Las pantallas son áreas independientes de escritorio, frecuentemente con un "escritorio virtual" mayor. El origen del escritorio virtual es la esquina superior izquierda de la pantalla principal designada por el sistema operativo. Por ello, las coordenadas de los límites de una pantalla individual pueden ser negativas. También puede haber áreas del escritorio virtual que no se encuentren en ninguna de las pantallas de visualización.
La clase Screen contiene miembros estáticos de clase para acceder a los objetos de pantalla disponibles y los miembros de las instancias para tener acceso a las propiedades de una pantalla individual. La información de la pantalla no se debe guardar en la caché, ya que un usuario puede modificarla en cualquier momento.
Tenga en cuenta que no es necesaria una correspondencia unívoca entre las pantallas y que los monitores físicos se pueden conectar a un equipo. Por ejemplo, dos monitores pueden mostrar la misma pantalla.
No es posible crear una instancia de la clase Screen directamente. Llama al nuevo constructor Screen()
que emite una excepción ArgumentError
.
Propiedad | Definido por | ||
---|---|---|---|
bounds : Rectangle [solo lectura]
Los límites de la pantalla. | Screen | ||
colorDepth : int [solo lectura]
Profundidad de color de la pantalla (expresada en número de bits). | Screen | ||
constructor : Object
Una referencia a la clase de objeto o función constructora para una instancia de objeto determinada. | Object | ||
mainScreen : Screen [estática] [solo lectura]
Visualización principal. | Screen | ||
mode : ScreenMode
El modo de pantalla actual del objeto Screen. | Screen | ||
modes : Array [solo lectura]
La matriz de los objetos del ScreenMode del objeto Screen. | Screen | ||
screens : Array [estática] [solo lectura]
Conjunto de los objetos Screen disponibles actualmente. | Screen | ||
visibleBounds : Rectangle [solo lectura]
Límites del área de la pantalla en la que la ventana puede ser visible. | Screen |
Método | Definido por | ||
---|---|---|---|
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. | EventDispatcher | ||
Distribuye un evento en el flujo del evento. | EventDispatcher | ||
[estática]
Devuelve (posiblemente vacío) el conjunto de objetos Screen que intersecan el rectángulo suministrado. | Screen | ||
Comprueba si el objeto EventDispatcher tiene detectores registrados para un tipo concreto de evento. | EventDispatcher | ||
Indica si un objeto tiene definida una propiedad especificada. | Object | ||
Indica si hay una instancia de la clase Object en la cadena de prototipo del objeto especificado como parámetro. | Object | ||
Indica si existe la propiedad especificada y si es enumerable. | Object | ||
Elimina un detector del objeto EventDispatcher. | EventDispatcher | ||
Establece la disponibilidad de una propiedad dinámica para operaciones de bucle. | Object | ||
Devuelve la representación de cadena de este objeto, con formato según las convenciones específicas de configuración regional. | Object | ||
Devuelve la representación de cadena del objeto especificado. | Object | ||
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. | EventDispatcher |
bounds | propiedad |
bounds:Rectangle
[solo lectura] Versión del lenguaje: | ActionScript 3.0 |
Versiones de motor de ejecución: | AIR 1.0 |
Los límites de la pantalla.
La ubicación de la pantalla depende del escritorio virtual.
En sistemas Linux que utilizan determinados gestores de ventanas, esta propiedad devuelve los límites del escritorio, no los límites visibles de la pantalla.
Implementación
public function get bounds():Rectangle
Ejemplo ( Cómo utilizar este ejemplo )
import flash.display.Screen; import flash.geom.Rectangle; var mainScreen:Screen = Screen.mainScreen; var screenBounds:Rectangle = mainScreen.bounds;
colorDepth | propiedad |
colorDepth:int
[solo lectura] Versión del lenguaje: | ActionScript 3.0 |
Versiones de motor de ejecución: | AIR 1.0 |
Profundidad de color de la pantalla (expresada en número de bits).
Implementación
public function get colorDepth():int
Ejemplo ( Cómo utilizar este ejemplo )
var mainScreen:Screen = Screen.mainScreen; var colors:uint = mainScreen.colorDepth;
mainScreen | propiedad |
mainScreen:Screen
[solo lectura] Versión del lenguaje: | ActionScript 3.0 |
Versiones de motor de ejecución: | AIR 1.0 |
Visualización principal.
Implementación
public static function get mainScreen():Screen
Ejemplo ( Cómo utilizar este ejemplo )
var primaryScreen:Screen = Screen.mainScreen;
mode | propiedad |
mode:ScreenMode
Versión del lenguaje: | ActionScript 3.0 |
Versiones de motor de ejecución: | AIR 29.0 |
El modo de pantalla actual del objeto Screen. La propiedad modo
indica el modo de pantalla actual de un dispositivo Screen específico.
Implementación
public function get mode():ScreenMode
public function set mode(value:ScreenMode):void
modes | propiedad |
modes:Array
[solo lectura] Versión del lenguaje: | ActionScript 3.0 |
Versiones de motor de ejecución: | AIR 29.0 |
La matriz de los objetos del ScreenMode del objeto Screen. La propiedad modos
indica los modos de pantalla compatibles con el dispositivo Screen específico.
Implementación
public function get modes():Array
screens | propiedad |
screens:Array
[solo lectura] Versión del lenguaje: | ActionScript 3. |
Versiones de motor de ejecución: | AIR 1.0 |
Conjunto de los objetos Screen disponibles actualmente.
Modificar el conjunto devuelto no produce ningún efecto sobre las pantallas disponibles.
Implementación
public static function get screens():Array
Ejemplo ( Cómo utilizar este ejemplo )
var screenArray:Array = Screen.screens;
visibleBounds | propiedad |
visibleBounds:Rectangle
[solo lectura] Versión del lenguaje: | ActionScript 3.0 |
Versiones de motor de ejecución: | AIR 1.0 |
Límites del área de la pantalla en la que la ventana puede ser visible.
La propiedad visibleBounds
de una pantalla no incluye la barra de tareas (así como otras barras de escritorio acopladas) en Windows, ni incluye la barra de menús y, en función de los ajustes del sistema operativo, el Dock en Mac OS X. En algunas configuraciones de Linux, no es posible determinar los límites visibles. En dichos casos, la propiedad visibleBounds
devolverá el mismo valor que la propiedad screenBounds
.
Implementación
public function get visibleBounds():Rectangle
Ejemplo ( Cómo utilizar este ejemplo )
import flash.display.Screen; import flash.geom.Rectangle; var mainScreen:Screen = Screen.mainScreen; var screenBounds:Rectangle = mainScreen.visibleBounds;
getScreensForRectangle | () | método |
public static function getScreensForRectangle(rect:Rectangle):Array
Versión del lenguaje: | ActionScript 3.0 |
Versiones de motor de ejecución: | AIR 1.0 |
Devuelve (posiblemente vacío) el conjunto de objetos Screen que intersecan el rectángulo suministrado.
Parámetros
rect:Rectangle — Un rectángulo con coordenadas relativas origen del escritorio virtual, situado en la esquina superior izquierda de la pantalla principal.
|
Array — Conjunto de objetos Screen con pantallas que contienen cualquier área definida por el parámetro rect .
|
Ejemplo ( Cómo utilizar este ejemplo )
import flash.display.Screen; import flash.geom.Rectangle; var rect:Rectangle = new Rectangle(-200, 100, 1000, 600); var intersectedScreens:Array = Screen.getScreensForRectangle(rect);
- Respondiendo a los eventos de teclado para decidir en qué lado de la pantalla se acopla.
- Accediendo al método
getScreensForRectangle()
de la clase estática Screen para obtener el objeto Screen para la pantalla que se visualiza actualmente. - Restaurar los límites de la ventana en función de las dimensiones de la pantalla.
- Redibujar el contenido de la ventana en función de las nuevas dimensiones de la ventana.
Tenga en cuenta que esta clase está recomendada para utilizarse como clase raíz de una aplicación de AIR con los ajustes SystemChrome="none"
y transparent="true"
. Para utilizar esta clase en una ventana con fondo cromático del sistema, se debe tener en cuenta el grosor del fondo y la anchura mínima de la ventana en los cálculos del tamaño y la ubicación de la ventana.
package { import flash.display.Screen; import flash.display.Sprite; import flash.display.StageAlign; import flash.display.StageScaleMode; import flash.events.KeyboardEvent; import flash.geom.Rectangle; import flash.ui.Keyboard; public class DockingWindow extends Sprite { private const dockedWidth:uint = 80; private const dockedHeight:uint = 80; public function DockingWindow():void{ stage.align = StageAlign.TOP_LEFT; stage.scaleMode = StageScaleMode.NO_SCALE; stage.addEventListener(KeyboardEvent.KEY_DOWN,onKey); dockLeft(); } private function onKey(event:KeyboardEvent):void{ switch(event.keyCode){ case Keyboard.LEFT : dockLeft(); break; case Keyboard.RIGHT : dockRight(); break; case Keyboard.UP : dockTop(); break; case Keyboard.DOWN : dockBottom(); break; case Keyboard.SPACE : stage.nativeWindow.close(); } } public function dockLeft():void{ var screen:Screen = getCurrentScreen(); stage.nativeWindow.x = screen.visibleBounds.left; stage.nativeWindow.y = screen.visibleBounds.top; stage.nativeWindow.height = screen.visibleBounds.height; stage.stageWidth = dockedWidth; drawContent(); } public function dockRight():void{ var screen:Screen = getCurrentScreen(); stage.nativeWindow.x = screen.visibleBounds.width - dockedWidth; stage.nativeWindow.y = screen.visibleBounds.top; stage.stageWidth = dockedWidth; stage.nativeWindow.height = screen.visibleBounds.height; drawContent(); } public function dockTop():void{ var screen:Screen = getCurrentScreen(); stage.nativeWindow.x = screen.visibleBounds.left; stage.nativeWindow.y = screen.visibleBounds.top; stage.nativeWindow.width = screen.visibleBounds.width; stage.stageHeight = dockedHeight; drawContent(); } public function dockBottom():void{ var screen:Screen = getCurrentScreen(); stage.nativeWindow.x = screen.visibleBounds.left; stage.nativeWindow.y = screen.visibleBounds.height - dockedHeight; stage.nativeWindow.width = screen.visibleBounds.width; stage.stageHeight = dockedHeight; drawContent(); } private function getCurrentScreen():Screen{ return Screen.getScreensForRectangle(stage.nativeWindow.bounds)[0]; } private function drawContent():void{ const size:int = 60; const pad:int = 10; var numHSquares:int = Math.floor(stage.stageWidth/(size + pad)); var numVSquares:int = Math.floor(stage.stageHeight/(size + pad)); with (graphics){ clear(); lineStyle(1); beginFill(0x3462d5,.7); for(var i:int = 0; i < numHSquares; i++){ for(var j:int = 0; j < numVSquares; j++){ drawRect((i * (size + pad)) + pad, (j * (size + pad)) + pad, size, size); } } endFill(); } } } }
Tue Jun 12 2018, 02:12 PM Z