(AIR only)
Language Version: | ActionScript 3.0 |
Runtime Versions: | AIR 1.0 |
The Screen class provides information about the display screens available to this application.
Screens are independent desktop areas within a possibly larger
"virtual desktop." The origin of the virtual desktop is the top-left corner
of the operating-system-designated main screen. Thus, the coordinates for the
bounds of an individual display screen may be negative. There may also be areas
of the virtual desktop that are not within any of the display screens.
The Screen class includes static class members for accessing the available
screen objects and instance members for accessing the properties of an
individual screen. Screen information should not be cached since
it can be changed by a user at any time.
Note that there is not necessarily a one-to-one correspondance between
screens and the physical monitors attached to a computer. For example, two monitors
may display the same screen.
You cannot instantiate the Screen class directly. Calls to
the new Screen()
constructor throw an
ArgumentError
exception.
View the examples
bounds:Rectangle
[read-only]
Language Version: | ActionScript 3.0 |
Runtime Versions: | AIR 1.0 |
The bounds of this screen.
The screen location is relative to the virtual desktop.
Implementation public function get bounds():Rectangle
Example The following example shows how to get the bounds of a screen
(in this case, the primary display screen):
import flash.display.Screen;
import flash.geom.Rectangle;
var mainScreen:Screen = Screen.mainScreen;
var screenBounds:Rectangle = mainScreen.bounds;
colorDepth:int
[read-only]
Language Version: | ActionScript 3.0 |
Runtime Versions: | AIR 1.0 |
The color depth of this screen (expressed in number of bits).
Implementation public function get colorDepth():int
Example The following example shows how to get the color depth of a screen
(in this case, the primary display screen):
var mainScreen:Screen = Screen.mainScreen;
var colors:uint = mainScreen.colorDepth;
mainScreen:Screen
[read-only]
Language Version: | ActionScript 3.0 |
Runtime Versions: | AIR 1.0 |
The primary display.
Implementation public static function get mainScreen():Screen
Example The following example shows how to get the Screen object representing the
"main" screen of this computer:
var primaryScreen:Screen = Screen.mainScreen;
screens:Array
[read-only]
Language Version: | ActionScript 3. |
Runtime Versions: | AIR 1.0 |
The array of the currently available screens.
Modifying the returned array has no effect on
the available screens.
Implementation public static function get screens():Array
Example The following example shows how to get the array containing the available screens:
var screenArray:Array = Screen.screens;
visibleBounds:Rectangle
[read-only]
Language Version: | ActionScript 3.0 |
Runtime Versions: | AIR 1.0 |
The bounds of the area on this screen in which windows can be visible.
The visibleBounds
of a screen excludes the task bar
(and other docked desk bars) on Windows, and excludes the
menu bar and, depending on system settings, the dock on Mac OS X.
On some Linux configurations, it is not possible to determine the visible bounds.
In these cases, the visibleBounds
property returns the same
value as the screenBounds
property.
Implementation public function get visibleBounds():Rectangle
Example The following example shows how to get the usable bounds of a screen
(in this case, the primary display screen):
import flash.display.Screen;
import flash.geom.Rectangle;
var mainScreen:Screen = Screen.mainScreen;
var screenBounds:Rectangle = mainScreen.visibleBounds;
public static function getScreensForRectangle(rect:Rectangle):Array
Language Version: | ActionScript 3.0 |
Runtime Versions: | AIR 1.0 |
Returns the (possibly empty) set of screens that intersect
the provided rectangle.
Parameters
| rect:Rectangle — A rectangle with coordinates relative to the origin of
the virtual desktop, which is the top-left corner of the primary
screen.
|
Returns | Array — An array of Screen objects containing the screens that contain any
part of the area defined by the rect parameter.
|
Example The following example shows how to get the array of screens containing
at least part of a given rectangle:
import flash.display.Screen;
import flash.geom.Rectangle;
var rect:Rectangle = new Rectangle(-200, 100, 1000, 600);
var intersectedScreens:Array = Screen.getScreensForRectangle(rect);
The following example defines a DockingWindow class
to create a window that docks to the sides of the screen.
This task is accomplished by performing the following steps:
- Responding to keyboard events to determine the side of the screen on which to
dock.
- Accessing the static Screen class method
getScreensForRectangle()
to get the Screen object for the screen upon which the window is currently
displayed. - Resetting the window bounds based on the screen dimensions.
- Redrawing the window content based on the new window dimensions.
Note, this class is intended to be used as the root class of an AIR application
with the settings SystemChrome="none"
and
transparent="true"
. To use this class in a window with system
chrome, you must take the chrome thickness and the minimum width of
the window into account when calculating window location and size.
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();
}
}
}
}
© 2009 Adobe Systems Incorporated. All rights reserved.
Wed Jul 29 2009, 04:58 PM -07:00 Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen Screen
flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen flash.display.Screen