| パッケージ | flash.display |
| クラス | public final class Screen |
| 継承 | Screen EventDispatcher Object |
| 言語バージョン: | ActionScript 3.0 |
| ランタイムバージョン: | AIR 1.0 |
画面は、それよりも大きい可能性のある "仮想デスクトップ" 内の個別のデスクトップ領域です。この仮想デスクトップの起点はオペレーティングシステムで設計されたメイン画面の左上隅になります。そのため、各表示画面の境界の座標は、負の値になる場合があります。また、どの表示画面の範囲にも含まれない仮想デスクトップの領域が存在する場合もあります。
Screen クラスには、利用可能な画面オブジェクトにアクセスするための静的なクラスメンバーと、個別の画面のプロパティにアクセスするためのインスタンスメンバーが用意されています。画面情報は、ユーザーによって常に変更される可能性があるので、キャッシュされません。
画面と、コンピュータに接続されている実際のモニタとの間には 1 対 1 の対応は必要ありません。例えば、2 つのモニタが同一の画面を表示することもあります。
Screen クラスを直接インスタンス化することはできません。new Screen() コンストラクタを呼び出すと、ArgumentError 例外がスローされます。
| プロパティ | 定義元 | ||
|---|---|---|---|
[読み取り専用]
この画面の境界です。 | Screen | ||
[読み取り専用]
ビット数で表した、この画面の色深度です。 | Screen | ||
![]() | constructor : Object
指定されたオブジェクトインスタンスのクラスオブジェクトまたはコンストラクタ関数への参照です。 | Object | |
[静的] [読み取り専用]
主表示です。 | Screen | ||
![]() | prototype : Object [静的]
クラスまたは関数オブジェクトのプロトタイプオブジェクトへの参照です。 | Object | |
[静的] [読み取り専用]
現在使用可能な画面の配列です。 | Screen | ||
[読み取り専用]
この画面上にウィンドウを表示できる領域の境界です。 | Screen | ||
| メソッド | 定義元 | ||
|---|---|---|---|
![]() | addEventListener(type:String, listener:Function, useCapture:Boolean = false, priority:int = 0, useWeakReference:Boolean = false):void
イベントリスナーオブジェクトを EventDispatcher オブジェクトに登録し、リスナーがイベントの通知を受け取るようにします。 | EventDispatcher | |
![]() |
イベントをイベントフローに送出します。 | EventDispatcher | |
[静的]
指定された矩形と交差する画面のセット (空の場合もあります) を返します。 | Screen | ||
![]() |
EventDispatcher オブジェクトに、特定のイベントタイプに対して登録されたリスナーがあるかどうかを確認します。 | EventDispatcher | |
![]() |
オブジェクトに指定されたプロパティが定義されているかどうかを示します。 | Object | |
![]() |
Object クラスのインスタンスが、パラメータとして指定されたオブジェクトのプロトタイプチェーン内にあるかどうかを示します。 | Object | |
![]() |
指定されたプロパティが存在し、列挙できるかどうかを示します。 | Object | |
![]() |
EventDispatcher オブジェクトからリスナーを削除します。 | EventDispatcher | |
![]() |
ループ処理に対するダイナミックプロパティの可用性を設定します。 | Object | |
![]() |
指定されたオブジェクトのストリング表現を返します。 | Object | |
![]() |
指定されたオブジェクトのプリミティブな値を返します。 | Object | |
![]() |
指定されたイベントタイプについて、この EventDispatcher オブジェクトまたはその祖先にイベントリスナーが登録されているかどうかを確認します。 | EventDispatcher | |
| プロパティ |
bounds:Rectangle [読み取り専用] | 言語バージョン: | ActionScript 3.0 |
| ランタイムバージョン: | AIR 1.0 |
この画面の境界です。
画面の位置は、仮想デスクトップを基準としています。
public function get bounds():Rectangleimport flash.display.Screen; import flash.geom.Rectangle; var mainScreen:Screen = Screen.mainScreen; var screenBounds:Rectangle = mainScreen.bounds;
| プロパティ |
colorDepth:int [読み取り専用] | 言語バージョン: | ActionScript 3.0 |
| ランタイムバージョン: | AIR 1.0 |
ビット数で表した、この画面の色深度です。
public function get colorDepth():intvar mainScreen:Screen = Screen.mainScreen; var colors:uint = mainScreen.colorDepth;
| プロパティ |
mainScreen:Screen [読み取り専用] | 言語バージョン: | ActionScript 3.0 |
| ランタイムバージョン: | AIR 1.0 |
主表示です。
public static function get mainScreen():Screenvar primaryScreen:Screen = Screen.mainScreen;
| プロパティ |
screens:Array [読み取り専用] | 言語バージョン: | ActionScript 3. |
| ランタイムバージョン: | AIR 1.0 |
現在使用可能な画面の配列です。
返された配列を変更しても、使用可能な画面には影響しません。
public static function get screens():Arrayvar screenArray:Array = Screen.screens;
| プロパティ |
visibleBounds:Rectangle [読み取り専用] | 言語バージョン: | ActionScript 3.0 |
| ランタイムバージョン: | AIR 1.0 |
この画面上にウィンドウを表示できる領域の境界です。
画面の visibleBounds では、Windows のタスクバー(および他のドッキングされたデスクバー)が除外され、Mac OS X のメニューバーおよびシステム設定によってはドックが除外されます。Linux の一部の設定では、表示境界を決定できません。その場合、visibleBounds プロパティは screenBounds プロパティと同じ値を返します。
public function get visibleBounds():Rectangleimport flash.display.Screen; import flash.geom.Rectangle; var mainScreen:Screen = Screen.mainScreen; var screenBounds:Rectangle = mainScreen.visibleBounds;
| () | メソッド |
public static function getScreensForRectangle(rect:Rectangle):Array| 言語バージョン: | ActionScript 3.0 |
| ランタイムバージョン: | AIR 1.0 |
指定された矩形と交差する画面のセット (空の場合もあります) を返します。
パラメータ
rect:Rectangle — 仮想デスクトップの原点 (主画面の左上隅) を基準とした座標を持つ矩形です。
|
Array — rect パラメータで定義されている領域の一部を含む画面が含まれている Screen オブジェクトの配列です。
|
import flash.display.Screen; import flash.geom.Rectangle; var rect:Rectangle = new Rectangle(-200, 100, 1000, 600); var intersectedScreens:Array = Screen.getScreensForRectangle(rect);
getScreensForRectangle() にアクセスして、ウィンドウが現在表示されている画面の Screen オブジェクトを取得します。このクラスは、SystemChrome="none" および transparent="true" の設定を持つ AIR アプリケーションのルートクラスとして使用することを目的としていることに注意してください。 システムクロムを使用するウィンドウでこのクラスを使用するには、ウィンドウの位置とサイズを計算するときに、クロムの幅とウィンドウの最小幅を考慮する必要があります。
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();
}
}
}
}
このページに新しいコメントが追加された場合に、電子メールでの通知を希望する。 | コメントレポート
現在のページ: http://livedocs.adobe.com/flex/3_jp/langref/flash/display/Screen.html