Pakiet | flash.display |
Klasa | public class Sprite |
Dziedziczenie | Sprite DisplayObjectContainer InteractiveObject DisplayObject EventDispatcher Object |
Podklasy | DownloadProgressBar, FlexSprite, FLVPlayback, FLVPlaybackCaptioning, FTETextField, HTMLLoader, LayoutTargetSprite, MediaPlayerSprite, MovieClip, Preloader, ProLoader, SparkDownloadProgressBar, SplashScreen, TLFTextField, UIComponent |
Wersja języka: | ActionScript 3.0 |
Wersje środowiska wykonawczego: | Flash Player 9, AIR 1.0, Flash Lite 4 |
Obiekt Sprite jest podobny do klipu filmowego, ale nie posiada osi czasu. Klasa Sprite jest odpowiednią klasą bazową dla obiektów, w których nie jest potrzebna oś czasu. Na przykład klasa Sprite byłaby logiczną klasą dla składników interfejsu użytkownika (UI), które z reguły nie potrzebują osi czasu.
Klasa Sprite jest nowością w skrypcie ActionScript 3.0. Zapewnia ona alternatywę względem funkcjonalności klasy MovieClip, która zachowuje wszelkie aspekty funkcjonalności poprzednich wersji skryptu ActionScript w celu zapewnienia kompatybilności wstecznej.
Właściwość | Zdefiniowane przez | ||
---|---|---|---|
accessibilityImplementation : AccessibilityImplementation
Bieżąca implementacja dostępności (AccessibilityImplementation) dla tego wystąpienia klasy InteractiveObject. | InteractiveObject | ||
accessibilityProperties : AccessibilityProperties
Bieżące opcje dostępności tego obiektu wyświetlanego. | DisplayObject | ||
alpha : Number
Wartość przezroczystości alfa określonego obiektu. | DisplayObject | ||
blendMode : String
Wartość z klasy BlendMode określająca, jakiego trybu mieszania należy użyć. | DisplayObject | ||
blendShader : Shader [tylko do zapisu]
Ustawia moduł cieniujący, który jest używany do mieszania pierwszego planu oraz tła. | DisplayObject | ||
buttonMode : Boolean
Określa tryb przycisku tej ikonki. | Sprite | ||
cacheAsBitmap : Boolean
Jeśli ustawiono wartość true, środowisko wykonawcze Flash buforuje wewnętrzną reprezentację bitmapy obiektu wyświetlanego. | DisplayObject | ||
cacheAsBitmapMatrix : Matrix
W przypadku wartości innej niż null ten obiekt Matrix definiuje sposób renderowania obiektu wyświetlanego, gdy cacheAsBitmap jest ustawione na true. | DisplayObject | ||
constructor : Object
Odwołanie do obiektu klasy lub funkcji konstruktora, dotyczące danej instancji obiektu. | Object | ||
contextMenu : NativeMenu
Określa menu kontekstowe tego obiektu. | InteractiveObject | ||
doubleClickEnabled : Boolean
Określa, czy ten obiekt reaguje na zdarzenia doubleClick (dwukrotne kliknięcia). | InteractiveObject | ||
dropTarget : DisplayObject [tylko do odczytu]
Określa obiekt ekranowy, nad którym jest przeciągana ikonka, lub na który upuszczono ikonkę. | Sprite | ||
filters : Array
Indeksowana tablica zawierająca wszystkie filtry aktualnie skojarzone z obiektem wyświetlanym. | DisplayObject | ||
focusRect : Object
Określa, czy z tym obiektem skojarzono ramkę aktywności. | InteractiveObject | ||
graphics : Graphics [tylko do odczytu]
Określa obiekt Graphics skojarzony z ikonką, której mogą dotyczyć polecenia rysowania kształtów wektorowych. | Sprite | ||
height : Number
Wysokość obiektu ekranowego w pikselach. | DisplayObject | ||
hitArea : Sprite
Określa ikonkę, która ma pełnić funkcję obszaru naciskania innej ikonki. | Sprite | ||
loaderInfo : LoaderInfo [tylko do odczytu]
Zwraca obiekt LoaderInfo zawierający informacje o ładowaniu pliku, do którego należy ten obiekt wyświetlany. | DisplayObject | ||
mask : DisplayObject
Wywoływany obiekt wyświetlany jest maskowany przez określony obiekt maski. | DisplayObject | ||
metaData : Object
Pobiera obiekt metadanych wystąpienia klasy DisplayObject, jeśli metadane są przechowywane razem z tym wystąpieniem klasy DisplayObject w pliku SWF, korzystając ze znacznika PlaceObject4. | DisplayObject | ||
mouseChildren : Boolean
Określa, czy elementy potomne obiektu obsługują mysz lub inne urządzenie wejściowe użytkownika. | DisplayObjectContainer | ||
mouseEnabled : Boolean
Określa, czy ten obiekt odbiera komunikaty z myszy lub innego urządzenia wejściowego użytkownika. | InteractiveObject | ||
mouseX : Number [tylko do odczytu]
Określa współrzędną x myszy lub urządzenia wejściowego użytkownika w pikselach. | DisplayObject | ||
mouseY : Number [tylko do odczytu]
Określa współrzędną y myszy lub urządzenia wejściowego użytkownika w pikselach. | DisplayObject | ||
name : String
Nazwa instancji obiektu DisplayObject. | DisplayObject | ||
needsSoftKeyboard : Boolean
Określa, czy klawiatura wirtualna (klawiatura programowa wyświetlana na ekranie) powinna być wyświetlana, gdy to wystąpienie klasy InteractiveObject staje się aktywne. | InteractiveObject | ||
numChildren : int [tylko do odczytu]
Zwraca liczbę elementów potomnych tego obiektu. | DisplayObjectContainer | ||
opaqueBackground : Object
Określa, czy przy konkretnym kolorze tła obiekt wyświetlany jest nieprzejrzysty. | DisplayObject | ||
parent : DisplayObjectContainer [tylko do odczytu]
Odnosi się do obiektu DisplayObjectContainer, który zawiera obiekt wyświetlany. | DisplayObject | ||
root : DisplayObject [tylko do odczytu]
Dla obiektu wyświetlanego w załadowanym pliku SWF główną właściwość stanowi obiekt wyświetlany na samym szczycie na liście wyświetlania w postaci struktury drzewa, którą reprezentuje plik SWF. | DisplayObject | ||
rotation : Number
Określa wielkość obrotu instancji obiektu DisplayObject (w kątach). | DisplayObject | ||
rotationX : Number
Wskazuje kąt obrotu (w stopniach) instancji DisplayObject wokół osi x — od pozycji początkowej względem nadrzędnego kontenera 3D. | DisplayObject | ||
rotationY : Number
Wskazuje kąt obrotu (w stopniach) instancji DisplayObject wokół osi y — od pozycji początkowej względem nadrzędnego kontenera 3D. | DisplayObject | ||
rotationZ : Number
Wskazuje kąt obrotu (w stopniach) instancji DisplayObject wokół osi z — od pozycji początkowej względem nadrzędnego kontenera 3D. | DisplayObject | ||
scale9Grid : Rectangle
Aktualnie stosowana siatka skalowania. | DisplayObject | ||
scaleX : Number
Wskazuje skalę poziomą (procent) obiektu względem punktu odniesienia. | DisplayObject | ||
scaleY : Number
Wskazuje skalę pionową (procent) obiektu względem punktu odniesienia. | DisplayObject | ||
scaleZ : Number
Wskazuje skalę głębokości (procent) obiektu względem punktu odniesienia. | DisplayObject | ||
scrollRect : Rectangle
Granice obszaru przewijania obiektu wyświetlanego. | DisplayObject | ||
softKeyboard : String
Steruje wyglądem klawiatury programowej. | InteractiveObject | ||
softKeyboardInputAreaOfInterest : Rectangle
Definiuje obszar, który powinien pozostać na ekranie po wyświetleniu klawiatury programowej (niedostępna w systemie iOS). | InteractiveObject | ||
soundTransform : flash.media:SoundTransform
Kontroluje dźwięki skojarzone z tą ikonką. | Sprite | ||
stage : Stage [tylko do odczytu]
Stół montażowy obiektu wyświetlanego. | DisplayObject | ||
tabChildren : Boolean
Określa, czy elementy potomne tego obiektu mają reagować na klawisz Tab. | DisplayObjectContainer | ||
tabEnabled : Boolean
Określa, czy do tego obiektu można przejść za pomocą klawisza Tab. | InteractiveObject | ||
tabIndex : int
Określa kolejność uaktywniania obiektów (z pliku SWF) za pomocą klawisza Tab. | InteractiveObject | ||
textSnapshot : flash.text:TextSnapshot [tylko do odczytu]
Zwraca obiekt TextSnapshot dla tego wystąpienia klasy DisplayObjectContainer. | DisplayObjectContainer | ||
transform : flash.geom:Transform
Obiekt z właściwościami dotyczącymi matrycy obiektu wyświetlanego, transformacji kolorów oraz granic pikseli. | DisplayObject | ||
useHandCursor : Boolean
Wartość typu Boolean wskazuje, czy wskaźnik dłoni pojawia się w momencie, gdy wskaźnik jest przesuwany nad ikonką, której właściwość buttonMode jest ustawiona na wartość true. | Sprite | ||
visible : Boolean
Decyduje, czy obiekt wyświetlany jest widoczny, czy nie. | DisplayObject | ||
width : Number
Szerokość obiektu ekranowego w pikselach. | DisplayObject | ||
x : Number
Oznacza współrzędną x instancji obiektu DisplayObject w lokalnym układzie współrzędnych nadrzędnego obiektu DisplayObjectContainer. | DisplayObject | ||
y : Number
Oznacza współrzędną y instancji obiektu DisplayObject w lokalnym układzie współrzędnych nadrzędnego obiektu DisplayObjectContainer. | DisplayObject | ||
z : Number
Wskazuje współrzędną wzdłuż osi Z instancji DisplayObject względem nadrzędnego kontenera 3D. | DisplayObject |
Metoda | Zdefiniowane przez | ||
---|---|---|---|
Sprite()
Tworzy nową instancję klasy Sprite. | Sprite | ||
Dodaje potomne wystąpienie klasy DisplayObject do tego wystąpienia klasy DisplayObjectContainer. | DisplayObjectContainer | ||
Dodaje potomne wystąpienie klasy DisplayObject do tego wystąpienia klasy DisplayObjectContainer. | DisplayObjectContainer | ||
addEventListener(type:String, listener:Function, useCapture:Boolean = false, priority:int = 0, useWeakReference:Boolean = false):void
Rejestruje obiekt detektora zdarzeń w obiekcie EventDispatcher, dzięki czemu detektor będzie otrzymywał powiadomienia o zdarzeniu. | EventDispatcher | ||
Wskazuje, czy ograniczenia ze względów bezpieczeństwa będą powodowały pomijanie obiektów wyświetlanych na liście uzyskanej poprzez wywołanie metody DisplayObjectContainer.getObjectsUnderPoint() z określonym punktem. | DisplayObjectContainer | ||
Decyduje o tym, czy określony obiekt ekranowy jest potomkiem instancji obiektu DisplayObjectContainer, czy też sam jest taką instancją. | DisplayObjectContainer | ||
Wywołuje zdarzenie, tj. kieruje je do przepływu zdarzeń. | EventDispatcher | ||
Zwraca prostokąt definiujący obszar obiektu wyświetlanego (w układzie współrzędnych obiektu targetCoordinateSpace). | DisplayObject | ||
Zwraca instancję podrzędnego obiektu wyświetlanego o podanym indeksie. | DisplayObjectContainer | ||
Zwraca instancję podrzędnego obiektu wyświetlanego o podanej nazwie. | DisplayObjectContainer | ||
Zwraca indeks podrzędnej instancji DisplayObject. | DisplayObjectContainer | ||
Zwraca tablicę obiektów, które leżą poniżej określonego punktu i są obiektami podrzędnymi tej instancji obiektu DisplayObjectContainer. | DisplayObjectContainer | ||
Zwraca prostokąt definiujący granice obiektu wyświetlanego w układzie współrzędnych określonych przez parametr targetCoordinateSpace (z wyłączeniem konturów kształtów). | DisplayObject | ||
Konwertuje obiekt punktowy ze współrzędnych obiektu Stage (globalne) do współrzędnych obiektu wyświetlanego (lokalne). | DisplayObject | ||
Konwertuje punkt dwuwymiarowy ze współrzędnych stołu wymiarowego (globalnych) na współrzędne trójwymiarowego obiektu wyświetlanego (lokalne). | DisplayObject | ||
Sprawdza, czy obiekt EventDispatcher zawiera jakiekolwiek detektory zarejestrowane dla konkretnego typu zdarzeń. | EventDispatcher | ||
Wskazuje, czy dla obiektu zdefiniowano określoną właściwość. | Object | ||
Wyznacza prostokąt ograniczający obiekt wyświetlany w celu sprawdzenia, czy zachodzi on lub przecina się z prostokątem ograniczającym obiektu wyświetlanego obj. | DisplayObject | ||
Analizuje obiekt wyświetlany w celu ustalenia czy nakłada się on lub przecina punkt określony przez parametry x i y. | DisplayObject | ||
Wskazuje, czy instancja klasy Object należy do łańcucha prototypów obiektu określonego jako parametr. | Object | ||
Konwertuje punkt trójwymiarowy trójwymiarowego obiektu wyświetlanego (lokalnego) na punkt dwuwymiarowy we współrzędnych stołu montażowego (globalnych). | DisplayObject | ||
Konwertuje obiekt punktowy ze współrzędnych obiektu wyświetlanego (lokalne) do współrzędnych obiektu Stage (globalne). | DisplayObject | ||
Wskazuje, czy określona właściwość istnieje i jest przeliczalna. | Object | ||
Usuwa określoną instancję obiektu podrzędnego DisplayObject z listy obiektów podrzędnych instancji DisplayObjectContainer. | DisplayObjectContainer | ||
Usuwa obiekt potomny DisplayObject o podanym indeksie z listy elementów potomnych obiektu DisplayObjectContainer. | DisplayObjectContainer | ||
Powoduje usunięcie wszystkich wystąpień potomnych klasy DisplayObject z listy obiektów potomnych wystąpień klasy DisplayObjectContainer. | DisplayObjectContainer | ||
Usuwa detektor z obiektu EventDispatcher. | EventDispatcher | ||
Powoduje uniesienie klawiatury wirtualnej. | InteractiveObject | ||
Zmienia położenie istniejącego elementu potomnego w kontenerze obiektów ekranowych. | DisplayObjectContainer | ||
Ustawia dostępność właściwości dynamicznej używanej w pętlach. | Object | ||
Pozwala użytkownikowi przeciągnąć określoną ikonkę. | Sprite | ||
Umożliwia użytkownikowi przeciąganie określonej ikonki na urządzeniu z ekranem dotykowym. | Sprite | ||
Rekurencyjnie zatrzymuje wykonywanie osi czasu wszystkich obiektów MovieClip, dla których ten obiekt jest obiektem głównym. | DisplayObjectContainer | ||
Kończy metodę startDrag(). | Sprite | ||
Kończy działanie metody startTouchDrag(); używana z urządzeniami wyposażonymi w ekran dotykowy. | Sprite | ||
Zamienia kolejność dwóch określonych obiektów podrzędnych. | DisplayObjectContainer | ||
Zamienia miejscami na liście dwa różne obiekty potomne o podanych indeksach. | DisplayObjectContainer | ||
Zwraca ciąg reprezentujący obiekt — sformatowany zgodnie z konwencjami właściwymi dla ustawień regionalnych. | Object | ||
Zwraca ciąg reprezentujący określony obiekt. | Object | ||
Zwraca pierwotną wartość dla określonego obiektu. | Object | ||
Sprawdza, czy detektor zdarzeń określonego typu jest zarejestrowany w tym obiekcie EventDispatcher lub jego elementach macierzystych. | EventDispatcher |
buttonMode | właściwość |
buttonMode:Boolean
Wersja języka: | ActionScript 3.0 |
Wersje środowiska wykonawczego: | Flash Player 9, AIR 1.0, Flash Lite 4 |
Określa tryb przycisku tej ikonki. Wartość true
powoduje, że ikonka zachowuje się jak przycisk, co oznacza, iż wyzwala wyświetlanie wskaźnika w postaci dłoni w momencie przesunięcia wskaźnika nad ikonkę oraz możliwość odebrania zdarzenia click
przy wciśnięciu klawiszy enter lub spacji kiedy ikonka jest aktywna. Możliwe jest ograniczenie wyświetlania kursora rączki poprzez ustawienie właściwości useHandCursor
na wartość false
, co spowoduje wyświetlanie strzałki.
Wprawdzie lepiej jest stosować klasę SimpleButton w celu utworzenia przycisków, możliwe jest wykorzystanie właściwości buttonMode
w celu nadania ikonce kilku funkcjonalności przycisku. W celu włączenia ikonki do sekwencji aktywacji klawiszem Tab, należy ustawić właściwość tabEnabled
(odziedziczoną z klasy InteractiveObject z wartością domyślną false
) na wartość true
. Dodatkowo należy rozważyć, czy obiekty podrzędne ikonki mają reagować na interakcje ze strony użytkownika. W przypadku większości przycisków interakcji z użytkownikiem nie należy włączać dla obiektów podrzędnych, gdyż może to zakłócać strumień zdarzeń. W celu wyłączenia interakcji z użytkownikiem dla obiektów podrzędnych należy ustawić właściwość mouseChildren
(odziedziczoną z klasy DisplayObjectContainer) na wartość false
.
W przypadku wykorzystania właściwości buttonMode
z klasą MovieClip (która jest podklasą klasy Sprite), przycisk może mieć dodatkowe funkcje. Przy zawarciu klatek oznaczonych _up, _over i _down moduł Flash Player zapewnia automatyczne zmiany stanu (funkcjonalność podobna do tej zapewnionej przez poprzednie wersje skryptu ActionScript dla klipów filmowych wykorzystanych jako przyciski). Automatyczne zmiany stanów nie są dostępne dla ikonek, gdyż nie posiadają one osi czasu, a zatem nie mają też ramek, którym można nadać etykiety.
Implementacja
public function get buttonMode():Boolean
public function set buttonMode(value:Boolean):void
Powiązane elementy interfejsu API
Przykład ( Sposób korzystania z tego przykładu )
buttonMode
na wartość true
dla jednej z nich oraz wartośćfalse
dla drugiej. Po skompilowaniu i uruchomieniu aplikacji obie ikonki reagują na zdarzenia myszy, ale tylko jedna z nich (której właściwość buttonMode
jest ustawiona na wartość true
) stosuje kursor rączki i jest włączona do kolejkowania dla klawisza Tab.
import flash.display.Sprite; import flash.events.MouseEvent; var circle1:Sprite = new Sprite(); circle1.graphics.beginFill(0xFFCC00); circle1.graphics.drawCircle(40, 40, 40); circle1.buttonMode = true; circle1.addEventListener(MouseEvent.CLICK, clicked); var circle2:Sprite = new Sprite(); circle2.graphics.beginFill(0xFFCC00); circle2.graphics.drawCircle(120, 40, 40); circle2.buttonMode = false; circle2.addEventListener(MouseEvent.CLICK, clicked); function clicked(event:MouseEvent):void { trace ("Click!"); } addChild(circle1); addChild(circle2);
dropTarget | właściwość |
dropTarget:DisplayObject
[tylko do odczytu] Wersja języka: | ActionScript 3.0 |
Wersje środowiska wykonawczego: | Flash Player 9, AIR 1.0, Flash Lite 4 |
Określa obiekt wyświetlany, nad którym jest przeciągana ikonka, lub na którą upuszczono ikonkę.
Implementacja
public function get dropTarget():DisplayObject
Powiązane elementy interfejsu API
Przykład ( Sposób korzystania z tego przykładu )
circle
oraz dwóch ikonek target
. Metoda startDrag()
jest wywoływana na ikonce circle
w momencie umiejscowienia przez użytkownika kursora nad ikonką i naciśnięcie przycisku myszy, zaś metoda stopDrag()
jest wywoływana w momencie zwolnienia przycisku. Pozwala to na przeciąganie ikonki przez użytkownika. W momencie zwolnienia przycisku myszy wywoływana jest metoda mouseRelease()
, która z kolei śledzi właściwość name
obiektu dropTarget
, do którego użytkownik przeciągnął ikonkę circle
:
import flash.display.Sprite; import flash.events.MouseEvent; var circle:Sprite = new Sprite(); circle.graphics.beginFill(0xFFCC00); circle.graphics.drawCircle(0, 0, 40); var target1:Sprite = new Sprite(); target1.graphics.beginFill(0xCCFF00); target1.graphics.drawRect(0, 0, 100, 100); target1.name = "target1"; var target2:Sprite = new Sprite(); target2.graphics.beginFill(0xCCFF00); target2.graphics.drawRect(0, 200, 100, 100); target2.name = "target2"; addChild(target1); addChild(target2); addChild(circle); circle.addEventListener(MouseEvent.MOUSE_DOWN, mouseDown) function mouseDown(event:MouseEvent):void { circle.startDrag(); } circle.addEventListener(MouseEvent.MOUSE_UP, mouseReleased); function mouseReleased(event:MouseEvent):void { circle.stopDrag(); trace(circle.dropTarget.name); }
graphics | właściwość |
graphics:Graphics
[tylko do odczytu] Wersja języka: | ActionScript 3.0 |
Wersje środowiska wykonawczego: | Flash Player 9, AIR 1.0, Flash Lite 4 |
Określa obiekt Graphics skojarzony z ikonką, której mogą dotyczyć polecenia rysowania kształtów wektorowych.
Implementacja
public function get graphics():Graphics
Przykład ( Sposób korzystania z tego przykładu )
circle
oraz wykorzystanie jej właściwości graphics
w celu narysowania okręgu z żółtym (0xFFCC00) wypełnieniem:
import flash.display.Sprite; var circle:Sprite = new Sprite(); circle.graphics.beginFill(0xFFCC00); circle.graphics.drawCircle(40, 40, 40); addChild(circle);
hitArea | właściwość |
hitArea:Sprite
Wersja języka: | ActionScript 3.0 |
Wersje środowiska wykonawczego: | Flash Player 9, AIR 1.0, Flash Lite 4 |
Określa ikonkę, która ma pełnić funkcję obszaru naciskania innej ikonki. Jeżeli właściwość hitArea
nie istnieje lub jej wartością jest null
bądź undefined
, wówczas sama ikonka jest wykorzystywana jako obszar naciskania. Wartością właściwości hitArea
może być odwołanie do obiektu Sprite.
Możliwa jest zmiana właściwości hitArea
w dowolnym momencie; zmodyfikowana ikonka natychmiast wykorzystuje nowe zachowanie obszaru naciskania. Ikonka określona jako obszar naciskania nie musi być widoczna; jej kształt graficzny, wprawdzie niewidoczny, jest wciąż wykrywany jako obszar naciskania.
Uwaga: Konieczne jest ustawienie właściwości mouseEnabled
na wartość false
ikonki określonej jako obszar naciskania. W innym przypadku przycisk ikonki może nie funkcjonować, ponieważ ikonka określona jako obszar naciskania, a nie przycisk, otrzymuje zdarzenia interakcji z użytkownikiem.
Implementacja
public function get hitArea():Sprite
public function set hitArea(value:Sprite):void
Przykład ( Sposób korzystania z tego przykładu )
circle
i square
. Ikonka square
znajduje się w obszarze hitArea
dla ikonki circle
. Zatem w momencie kliknięcia przez użytkownika ikonki square
ikonka circle
wywołuje zdarzenie click
.
import flash.display.Sprite; import flash.events.MouseEvent; var circle:Sprite = new Sprite(); circle.graphics.beginFill(0xFFCC00); circle.graphics.drawCircle(0, 0, 40); var square:Sprite = new Sprite(); square.graphics.beginFill(0xCCFF00); square.graphics.drawRect(200, 0, 100, 100); circle.hitArea = square; square.mouseEnabled = false; circle.addEventListener(MouseEvent.CLICK, clicked); function clicked(event:MouseEvent):void{ trace(event.target == circle); // true trace(event.target == square); // false } addChild(circle); addChild(square);
soundTransform | właściwość |
soundTransform:flash.media:SoundTransform
Wersja języka: | ActionScript 3.0 |
Wersje środowiska wykonawczego: | Flash Player 9, AIR 1.0, Flash Lite 4 |
Kontroluje dźwięki skojarzone z tą ikonką.
Uwaga: Ta właściwość nie ma wpływu na treść HTML w obiekcie HTMLControl (w środowisku Adobe AIR).
Implementacja
public function get soundTransform():flash.media:SoundTransform
public function set soundTransform(value:flash.media:SoundTransform):void
Powiązane elementy interfejsu API
Przykład ( Sposób korzystania z tego przykładu )
container
oraz dodanie obiektu Loader do jego listy obiektów podrzędnych. Obiekt Loader ładuje plik SWF. W momencie kliknięcia przez użytkownika łącza w polu tekstowym tf
(true
) metoda mute()
ustawia wartość właściwości volume
właściwości soundTransform
ikonki container
:
import flash.display.Sprite; import flash.display.Loader; import flash.events.IOErrorEvent; import flash.events.MouseEvent; import flash.net.URLRequest; import flash.text.TextField; import flash.media.SoundTransform; var container:Sprite = new Sprite(); addChild(container); var ldr:Loader = new Loader; var urlReq:URLRequest = new URLRequest("SoundPlayer.swf"); ldr.load(urlReq); container.addChild(ldr); ldr.contentLoaderInfo.addEventListener(IOErrorEvent.IO_ERROR, urlNotFound); var tf:TextField = new TextField(); tf.htmlText = "<a href = 'event:Mute'>Mute / Unmute</a>"; addChild(tf); var mySoundTransform:SoundTransform = new SoundTransform(); mySoundTransform.volume = 1; tf.addEventListener(MouseEvent.CLICK, mute); function mute(event:MouseEvent):void { if (mySoundTransform.volume == 0) { mySoundTransform.volume = 1; } else { mySoundTransform.volume = 0; } container.soundTransform = mySoundTransform; } function urlNotFound(event:IOErrorEvent):void { trace("The URL was not found."); }
useHandCursor | właściwość |
useHandCursor:Boolean
Wersja języka: | ActionScript 3.0 |
Wersje środowiska wykonawczego: | Flash Player 9, AIR 1.0 |
Wartość typu Boolean wskazuje czy wskaźnik dłoni pojawia się w momencie, gdy wskaźnik jest przesuwany nad ikonką, której właściwość buttonMode
jest ustawiona na wartość true
. Wartość domyślna dla właściwości useHandCursor
wynosi true
. W przypadku ustawienia właściwości useHandCursor
na wartość true
, w momencie przesunięcia wskaźnika nad ikonkę przycisku pojawia się wskaźnik w kształcie dłoni. W przypadku ustawienia właściwości useHandCursor
na wartość false
wykorzystywany jest kursor strzałki.
Możliwa jest zmiana właściwości useHandCursor
w dowolnym momencie; zmodyfikowana ikonka natychmiast wykorzystuje nowy wygląd kursora.
Uwaga: Jeśli we Flex lub Flash Builder ikonka zawiera ikonki podrzędne, wówczas właściwość mouseChildren
można ustawić na wartość false
. Na przykład, jeśli kursor w kształcie rączki ma być wyświetlany nad elementem sterującym Flex <mx:Label>, należy ustawić właściwości useHandCursor
i buttonMode
na wartość true
oraz właściwość mouseChildren
na wartość false
.
Implementacja
public function get useHandCursor():Boolean
public function set useHandCursor(value:Boolean):void
Powiązane elementy interfejsu API
Przykład ( Sposób korzystania z tego przykładu )
buttonMode
na wartość true
w przypadku obu, przy czym ustawia właściwość useHandCursor
na wartość true
dla jednej z nich, zaś wartośćfalse
dla drugiej. Po skompilowaniu i uruchomieniu aplikacji obie ikonki reagują jak przyciski (są też włączone do kolejkowania dla przycisku Tab), ale tylko jedna z nich (której właściwość useHandCursor
jest ustawiona na wartość true
) stosuje kursor rączki.
import flash.display.Sprite; import flash.events.MouseEvent; var circle1:Sprite = new Sprite(); circle1.graphics.beginFill(0xFFCC00); circle1.graphics.drawCircle(40, 40, 40); circle1.buttonMode = true; circle1.useHandCursor = true; circle1.addEventListener(MouseEvent.CLICK, clicked); var circle2:Sprite = new Sprite(); circle2.graphics.beginFill(0xFFCC00); circle2.graphics.drawCircle(120, 40, 40); circle2.buttonMode = true; circle2.useHandCursor = false; circle2.addEventListener(MouseEvent.CLICK, clicked); function clicked(event:MouseEvent):void { trace ("Click!"); } addChild(circle1); addChild(circle2);
Sprite | () | Konstruktor |
public function Sprite()
Wersja języka: | ActionScript 3.0 |
Wersje środowiska wykonawczego: | Flash Player 9, AIR 1.0, Flash Lite 4 |
Tworzy nową instancję klasy Sprite. Po utworzeniu instancji Sprite należy wywołać metodę DisplayObjectContainer.addChild()
lub DisplayObjectContainer.addChildAt()
w celu dodania instancji do nadrzędnego obiektu DisplayObjectContainer.
startDrag | () | metoda |
public function startDrag(lockCenter:Boolean = false, bounds:Rectangle = null):void
Wersja języka: | ActionScript 3.0 |
Wersje środowiska wykonawczego: | Flash Player 9, AIR 1.0, Flash Lite 4 |
Pozwala użytkownikowi przeciągnąć określoną ikonkę. Przeciągnięcie ikonki jest możliwe do momentu jawnego zatrzymania poprzez wywołanie do metody Sprite.stopDrag()
lub do momentu, możliwe stanie się przeciągnięcie innej ikonki. W danym momencie możliwe jest przeciągnięcie tylko jednej ikonki.
Trójwymiarowe obiekty wyświetlane podążają za ruchem wskaźnika, a metoda Sprite.startDrag()
przesuwa obiekt po trójwymiarowej płaszczyźnie zdefiniowanej przez obiekt wyświetlany. Jeśli jednak obiekt wyświetlany jest obiektem dwuwymiarowym oraz elementem podrzędnym obiektu trójwymiarowego, wówczas obiekt dwuwymiarowy jest przesuwany po płaszczyźnie trójwymiarowej zdefiniowanej przez nadrzędny obiekt trójwymiarowy.
Parametry
lockCenter:Boolean (default = false ) — Określa, czy możliwa do przesunięcia ikonka jest zablokowana w centrum wskaźnika myszy (wartość true ), czy zablokowana w punkcie, w którym użytkownik kliknął ikonkę po raz pierwszy (wartość false ).
| |
bounds:Rectangle (default = null ) — Wartość względna wobec współrzędnych obiektu nadrzędnego Sprite, która określa prostokąt ograniczający dla obiektu Sprite.
|
Powiązane elementy interfejsu API
Przykład ( Sposób korzystania z tego przykładu )
circle
oraz dwóch ikonek target
. Metoda startDrag()
jest wywoływana na ikonce circle
w momencie umiejscowienia przez użytkownika kursora nad ikonką i naciśnięcie przycisku myszy, zaś metoda stopDrag()
jest wywoływana w momencie zwolnienia przycisku. Pozwala to na przeciąganie ikonki przez użytkownika. W momencie zwolnienia przycisku myszy wywoływana jest metoda mouseRelease()
, która z kolei śledzi właściwość name
obiektu dropTarget
, do którego użytkownik przeciągnął ikonkę circle
:
import flash.display.Sprite; import flash.events.MouseEvent; var circle:Sprite = new Sprite(); circle.graphics.beginFill(0xFFCC00); circle.graphics.drawCircle(0, 0, 40); var target1:Sprite = new Sprite(); target1.graphics.beginFill(0xCCFF00); target1.graphics.drawRect(0, 0, 100, 100); target1.name = "target1"; var target2:Sprite = new Sprite(); target2.graphics.beginFill(0xCCFF00); target2.graphics.drawRect(0, 200, 100, 100); target2.name = "target2"; addChild(target1); addChild(target2); addChild(circle); circle.addEventListener(MouseEvent.MOUSE_DOWN, mouseDown) function mouseDown(event:MouseEvent):void { circle.startDrag(); } circle.addEventListener(MouseEvent.MOUSE_UP, mouseReleased); function mouseReleased(event:MouseEvent):void { circle.stopDrag(); trace(circle.dropTarget.name); }
startTouchDrag | () | metoda |
public function startTouchDrag(touchPointID:int, lockCenter:Boolean = false, bounds:Rectangle = null):void
Wersja języka: | ActionScript 3.0 |
Wersje środowiska wykonawczego: | Flash Player 10.1, AIR 2, Flash Lite 4 |
Umożliwia użytkownikowi przeciąganie określonej ikonki na urządzeniu z ekranem dotykowym. Ikonka jest możliwa do przeciągnięcia do momentu jawnego zatrzymania poprzez wywołanie do metody Sprite.stopTouchDrag()
lub momentu, gdy inna ikonka staje się możliwa do przeciągnięcia. W danym momencie możliwe jest przeciągnięcie tylko jednej ikonki.
Trójwymiarowe obiekty wyświetlane podążają za ruchem wskaźnika, a metoda Sprite.startTouchDrag()
przesuwa obiekt po trójwymiarowej płaszczyźnie zdefiniowanej przez obiekt wyświetlany. Jeśli obiekt ekranowy jest dwuwymiarowy i jest elementem potomnym obiektu trójwymiarowego, to obiekt dwuwymiarowy przemieszcza się w obrębie płaszczyzny trójwymiarowej zdefiniowanej przez macierzysty obiekt trójwymiarowy.
Parametry
touchPointID:int — Liczba całkowita, która ma być przypisana do punktu dotyku.
| |
lockCenter:Boolean (default = false ) — Określa, czy możliwa do przesunięcia ikonka jest zablokowana w centrum wskaźnika myszy (wartość true ), czy zablokowana w punkcie, w którym użytkownik kliknął ikonkę po raz pierwszy (wartość false ).
| |
bounds:Rectangle (default = null ) — Wartość względna wobec współrzędnych obiektu nadrzędnego Sprite, która określa prostokąt ograniczający dla obiektu Sprite.
|
Powiązane elementy interfejsu API
Przykład ( Sposób korzystania z tego przykładu )
MySprite.addEventListener(TouchEvent.TOUCH_BEGIN, onTouchBegin); MySprite.addEventListener(TouchEvent.TOUCH_END, onTouchEnd); function onTouchBegin(e:TouchEvent) { e.target.startTouchDrag(e.touchPointID, false, bg.getRect(this)); trace("touch begin"); } function onTouchEnd(e:TouchEvent) { e.target.stopTouchDrag(e.touchPointID); trace("touch end"); }
stopDrag | () | metoda |
public function stopDrag():void
Wersja języka: | ActionScript 3.0 |
Wersje środowiska wykonawczego: | Flash Player 9, AIR 1.0, Flash Lite 4 |
Kończy metodę startDrag()
. Ikonka, której przeciągnięcie stało się możliwe w wyniku wywołania metody startDrag()
, utrzymuje ten stan do momentu dodania metody stopDrag()
lub gdy stanie się możliwe przeciągnięcie innej ikonki. W danym momencie możliwe jest przeciągnięcie tylko jednej ikonki.
Powiązane elementy interfejsu API
Przykład ( Sposób korzystania z tego przykładu )
circle
oraz dwóch ikonek target
. Metoda startDrag()
jest wywoływana na ikonce circle
w momencie umiejscowienia przez użytkownika kursora nad ikonką i naciśnięcie przycisku myszy, zaś metoda stopDrag()
jest wywoływana w momencie zwolnienia przycisku. Pozwala to na przeciąganie ikonki przez użytkownika. W momencie zwolnienia przycisku myszy wywoływana jest metoda mouseRelease()
, która z kolei śledzi właściwość name
obiektu dropTarget
, do którego użytkownik przeciągnął ikonkę circle
:
import flash.display.Sprite; import flash.events.MouseEvent; var circle:Sprite = new Sprite(); circle.graphics.beginFill(0xFFCC00); circle.graphics.drawCircle(0, 0, 40); var target1:Sprite = new Sprite(); target1.graphics.beginFill(0xCCFF00); target1.graphics.drawRect(0, 0, 100, 100); target1.name = "target1"; var target2:Sprite = new Sprite(); target2.graphics.beginFill(0xCCFF00); target2.graphics.drawRect(0, 200, 100, 100); target2.name = "target2"; addChild(target1); addChild(target2); addChild(circle); circle.addEventListener(MouseEvent.MOUSE_DOWN, mouseDown) function mouseDown(event:MouseEvent):void { circle.startDrag(); } circle.addEventListener(MouseEvent.MOUSE_UP, mouseReleased); function mouseReleased(event:MouseEvent):void { circle.stopDrag(); trace(circle.dropTarget.name); }
stopTouchDrag | () | metoda |
public function stopTouchDrag(touchPointID:int):void
Wersja języka: | ActionScript 3.0 |
Wersje środowiska wykonawczego: | Flash Player 10.1, AIR 2, Flash Lite 4 |
Kończy działanie metody startTouchDrag()
; używana z urządzeniami wyposażonymi w ekran dotykowy. Ikonka, której przeciągnięcie stało się możliwe w wyniku wywołania metody startTouchDrag()
, utrzymuje ten stan do momentu dodania metody stopTouchDrag()
lub gdy stanie się możliwe przeciągnięcie innej ikonki. W danym momencie możliwe jest przeciągnięcie tylko jednej ikonki.
Parametry
touchPointID:int — Liczba całkowita przypisana do punktu dotyku w metodzie startTouchDrag .
|
Powiązane elementy interfejsu API
Przykład ( Sposób korzystania z tego przykładu )
MySprite.addEventListener(TouchEvent.TOUCH_BEGIN, onTouchBegin); MySprite.addEventListener(TouchEvent.TOUCH_END, onTouchEnd); function onTouchBegin(e:TouchEvent) { e.target.startTouchDrag(e.touchPointID, false, bg.getRect(this)); trace("touch begin"); } function onTouchEnd(e:TouchEvent) { e.target.stopTouchDrag(e.touchPointID); trace("touch end"); }
- Należy zadeklarować właściwość
size
(100 x 100 pikseli) oraz kolor tła (pomarańczowy) dla późniejszego wykorzystania przy rysowaniu kwadratu. - Wówczas konstruktor tworzy nowy obiekt Sprite
child
oraz wykorzystuje go w celu dodania dwóch detektorów zdarzeń i powiązanych z nimi metodmouseDownHandler()
orazmouseUpHandler()
. - Obiekt Sprite
child
jest następnie przekazywany do metodydraw()
, która rysuje pomarańczowy kwadrat. - Obiekt podrzędny jest wówczas umieszczany na liście wyświetlania poprzez wywołanie do metody
addChild()
. - Detektory zdarzeń funkcjonują w następujący sposób:
mouseDownHandler()
: w momencie kliknięcia obiektu Sprite przez użytkownika metoda dodaje detektor zdarzeń mouseMove - metodęmouseMoveHandler()
- która przetwarza ruchy myszy. Następnie wywoływana jest metodastartDrag()
, która umożliwia przeciąganie obiektu Sprite.mouseUpHandler()
: w momencie zwolnienia przycisku myszy detektor zdarzeń mouseMove jest usuwany oraz wywoływana jest metodastopDrag()
, która unieruchamia pomarańczowy kwadrat.mouseMoveHandler
: ta metoda nakazuje odtwarzaczowi ciągłe przerysowywanie pomarańczowego kwadratu przez cały okres czasu, kiedy przyciśnięty jest lewy przycisk myszy.
Uwaga: Każda z metod detektora zdarzeń deklaruje lokalną zmienną sprite
, która jest powiązana z właściwością target
zdarzenia.
package { import flash.display.Sprite; import flash.events.*; public class SpriteExample extends Sprite { private var size:uint = 100; private var bgColor:uint = 0xFFCC00; public function SpriteExample() { var child:Sprite = new Sprite(); child.addEventListener(MouseEvent.MOUSE_DOWN, mouseDownHandler); child.addEventListener(MouseEvent.MOUSE_UP, mouseUpHandler); draw(child); addChild(child); } private function mouseDownHandler(event:MouseEvent):void { trace("mouseDownHandler"); var sprite:Sprite = Sprite(event.target); sprite.addEventListener(MouseEvent.MOUSE_MOVE, mouseMoveHandler); sprite.startDrag(); } private function mouseUpHandler(event:MouseEvent):void { trace("mouseUpHandler"); var sprite:Sprite = Sprite(event.target); sprite.removeEventListener(MouseEvent.MOUSE_MOVE, mouseMoveHandler); sprite.stopDrag(); } private function mouseMoveHandler(event:MouseEvent):void { trace("mouseMoveHandler"); event.updateAfterEvent(); } private function draw(sprite:Sprite):void { sprite.graphics.beginFill(bgColor); sprite.graphics.drawRect(0, 0, size, size); sprite.graphics.endFill(); } } }
Tue Jun 12 2018, 12:06 PM Z