Część 3.
Zarządzanie czasem i informacją
Części składowe języka HTML
Co czyni film interaktywnym? Interaktywność opiera się na obustronnej komunikacji pomiędzy użytkownikiem i filmem. W przypadku filmu Flasha, użytkownik może reagować wykonaniem akcji polegającej na przesunięciu wskaźnika myszy, kliknięciu jej przycisku czy naciśnięciu określonego klawisza na klawiaturze. Akcja taka wywoła odpowiedź ze strony filmu, który z kolei może zażądać od użytkownika wykonania kolejnego działania. To właśnie reakcja użytkownika na rzeczy dziejące się na ekranie - we Flashu nazywane zdarzeniami - wprowadza do projektu interaktywność. Do zarządzania zdarzeniami - Flash używa kombinacji skryptów akcji przypisywanych do ujęć, klonów przycisków i obiektów, grupując je w wyrażeniach nazywanych manipulatorami zdarzeń. W tym rozdziale na początek zajmujemy się symbolami przycisków i ich bardziej zaawansowanymi zastosowaniami. Nauczysz się powiększać funkcjonalność tych elementów, tworząc niewidzialne przyciski, sekwencje animacji klonów przycisków, jak również w pełni animowane przyciski. Omówimy też zagadnienia związane z tworzeniem bardziej złożonych przycisków, w rodzaju menu rozwijanych, zawierających różne zdarzenia związane z obsługą myszy, opcje śledzenia i klipy filmowe. Na koniec zobaczysz, w jaki sposób nadzorować reakcje użytkownika posługującego się klawiaturą za pośrednictwem zdarzeń klawiaturowych powiązanych z klonami przycisków i obiektem Key. Oprócz zdarzeń związanych z obsługą myszy oraz zdarzeń klawiaturowych, istnieje jeszcze jeden typ zdarzeń - filmowe, które są też bardzo ważne dla kontrolowania interakcji z użytkownikiem. Jako że zdarzenia filmowe są związane z klipami filmowymi, omówimy je w rozdziale 5., którego treść koncentruje się właśnie na klipach filmowych oraz posługiwaniu się listwą czasową. |
W programie Flash można zdefiniować cztery specjalne ujęcia kluczowe symbolu przycisku, które opisują wygląd przycisku i sposób jego reakcji na ruch myszą. Są to stany przycisku - o nazwach Up, Over, Down i Hit. Stan Up określa wygląd przycisku w momencie, kiedy wskaźnik myszy jest poza jego granicami. Over ukazuje wygląd przycisku w momencie, kiedy wskaźnik myszy znajduje się bezpośrednio nad przyciskiem. W stanie Down określa się wygląd przycisku w momencie, kiedy wskaźnik myszy znajduje się nad przyciskiem i wciśnięto klawisz myszy. Ostatni stan, Hit, określa aktywny obszar przycisku (rys. 4.1). Możesz zwiększyć elastyczność przycisków Flasha, definiując tylko niektóre stany. Zostawiając puste ujęcia kluczowe we wszystkich stanach, z wyjątkiem stanu Hit, otrzymasz w rezultacie niewidzialny przycisk. Niewidzialny przycisk posiada tylko stan Hit, definiujący obszar reagujący na wskaźnik myszy (rys. 4.2). Tego typu przyciski są szczególne użyteczne przy tworzeniu złożonych, uniwersalnych obszarów aktywnych, którym można przypisać konkretne akcje. Można umieszczać klony niewidzialnych przycisków nad obszarem grafiki, co oznacza, że właściwie dowolny element sceny może posłużyć za przycisk. Na przykład, jeśli utworzyłeś kilka bloków tekstowych, które użytkownik ma przeczytać jeden po drugim, mógłbyś zrobić tak, żeby kliknięcie myszą jednego z nich otwierało kolejny akapit. Zamiast więc tworzyć oddzielne przyciski dla każdego bloku tekstowego, przygotuj tylko jeden niewidzialny przycisk i dopasuj jego klony do każdego z bloków. Przypisz akcje wszystkim klonom niewidzialnego przycisku, umieszczonym nad obszarami bloków tekstowych (rys. 4.3). Kiedy przeciągniesz klon niewidzialnego przycisku na scenę, pojawi się obszar aktywny, przedstawiony w postaci przezroczystego niebieskiego kształtu, pozwalający precyzyjnie umieścić przycisk na scenie. Wybierz Control/ Enable Simple Buttons, a przycisk zniknie. |
Rys. 4.1. Cztery ujęcia kluczowe symbolu przycisku
Rys. 4.2. Niewidzialny przycisk uzyskasz definiując tylko stan Hit
Rys. 4.3. Klony niewidzialnego przycisku umieszczone nad blokami tekstowymi
|
Rys. 4.4. Symbol niewidzialnego przycisku. Prostokątny kształt w ujęciu kluczowym Hit definiuje obszar aktywny przycisku
|
W celu
|
W celu utworzenia
Wskazówki
|
Rys. 4.5. Stan Over tego niewidzialnego przycisku zawiera dymek z instrukcją skorzystania ze słowniczka. Można wykorzystać kilka klonów do zaznaczenia różnych słów
Rys. 4.7. Klon umieszczony nad słowami „muscle contraction” został rozciągnięty. Spowodowało to także rozciągnięcie stanu Over przycisku w podobny sposób |
Rys. 4.8. Akcja przypisana do tego klonu przycisku w kształcie balonika powoduje przejście do etykiety happy birthday i rozpoczęcie odtwarzania
Rys. 4.9. Ten balonik unosi się i opada w niekończącej się pętli animacji
|
Animowane przyciski Skoro przyciski są rodzajem symbolu, to znaczy, że można je animować - tak jak każdy inny klon symbolu. Wprawienie przycisków w ruch stwarza możliwość projektowania poruszających się menu czy elementów interfejsu, które oczywiście reagują na wskaźnik myszy i wykonują przypisane im akcje. W celu wykonania automatycznej animacji ruch przycisku:
|
Wskazówka
|
Rys. 4.10. Akcje przypisane animowanym klonom. W sekwencji animacji wykonywane są akcje przypisane do pierwszego klonu
|
Rys. 4.11. Klipy filmowe posiadają niezależne listwy czasowe
|
Animowane przyciski Animowane przyciski wyświetlają animację w jednym z trzech pierwszych ujęć kluczowych (Up, Over i Down) symbolu przycisku. Na przykład, przycisk mógłby wirować w momencie „najechania” na niego wskaźnikiem myszy, jako że stan Over zawiera animację wirującego przycisku. Ale jak wpasować animację w jedno tylko ujęcie kluczowe symbolu przycisku? Odpowiedzią jest wykorzystanie klipu filmowego. Klipy filmowe stanowią specjalny rodzaj symbolu, który umożliwia przechowywanie animacji odtwarzanych, niezależnie od ich położenia czy liczby klatek zajmowanych przez klon symbolu. Jest to możliwe dlatego, że listwa czasowa klipu filmowego jest niezależna od pozostałych listew, łącznie z listwami czasowymi innych klipów, jak również głównej listwy czasowej, w której klip może rezydować. Niezależność ta oznacza, że w przypadku wprowadzenia do sceny klonu symbolu, będą odtwarzane wszystkie klatki animacji klipu filmowego, niezależnie od jej umiejscowienia. Umieszczenie klonu klipu filmowego w ujęciu kluczowym symbolu przycisku sprawia, że klip filmowy będzie odtwarzany za każdym razem po wyświetleniu tego ujęcia kluczowego. Opisane zagadnienia to podstawy działania animowanych przycisków. Rozważmy przykład motyla trzepocącego skrzydłami. Animacja taka mogłaby zajmować dziesięć klatek w symbolu klipu filmowego. Jednak wstawienie klonu tego filmu do innego filmu na scenie, mającego tylko jedną klatkę, wciąż pozwala oglądać animację motyla w całości (rys. 4.11). Właściwość ta jest użyteczna w projektowaniu cyklicznych animacji odtwarzanych niezależnie od tego, co dzieje się na głównej listwie czasowej. Animację mrugających oczu, na przykład, można umieścić w obrębie twarzy w postaci klipu filmowego. I wtedy cokolwiek działoby się z twarzą - jeśli w ogóle coś by się działo - oczy będą cały czas mrugać. |
W celu utworzenia klipu filmowego:
Wskazówka
|
Rys. 4.12. Stwórz nowy symbol klipu filmowego przez nadanie mu nazwy (Name) i określenie zachowania (Behavior)
Rys. 4.13. Symbol klipu filmowego przedstawiającego kręgi na wodzie zawiera sekwencję animacji owalu, powiększającego się i stopniowo znikającego
Rys. 4.14. Wprowadź klon symbolu klipu filmowego na scenę, przeciągając go z biblioteki |
Rys. 4.15. Prosty symbol przycisku z owalami umieszczonymi we wszystkich czterech ujęciach kluczowych
|
W celu
|
Klon klipu filmowego a klon symbolu graficznego |
|
Co odróżnia klon klipu filmowego od klonu symbolu graficznego? Odpowiedź znajdziesz po utworzeniu tej samej animacji jednocześnie w symbolu klipu filmowego oraz symbolu graficznym, a następnie umieszczeniu obydwu klonów na scenie. Klon symbolu graficznego odtwarza zawartą w nim animację w głównym środowisku Flasha, wyświetlając tyle klatek, ile jest aktualnie dostępnych na głównej listwie czasowej. Przykładowo, jeśli symbol graficzny zawiera animację dziesięcioklatkową, a jego klon zajmuje cztery klatki na głównej listwie czasowej, to będziesz mógł obejrzeć jedynie cztery klatki animacji. |
Natomiast klipy filmowe nie funkcjonują bezpośrednio w środowisku Flasha. Żeby zobaczyć je w działaniu, trzeba wcześniej wyeksportować je do formatu SWF. W wyniku tego Flash będzie odtwarzał klon klipu filmowego bez przerwy, niezależnie od liczby klatek zajmowanych przez klon, a nawet po zakończeniu odtwarzania samego filmu. |
Wskazówka
|
Rys. 4.16. Stan Over symbolu przycisku. Umieść klon klipu filmowego, przedstawiającego kręgi na wodzie, właśnie w tym ujęciu kluczowym, dzięki czemu animacja będzie odtwarzana za każdym razem, kiedy wskaźnik myszy znajdzie się nad przyciskiem
Rys. 4.17. Ostateczna postać animowanego przycisku. Po wskazaniu przycisku myszą - rozpoczyna się odtwarzanie klipu filmowego, przedstawiającego rozchodzące się kręgi na wodzie
|
Rys. 4.18. Typowe przykłady menu rozwijanych: menu File w systemie Mac OS (po lewej) oraz menu Web w przeglądarce Netscape Navigator (po prawej)
Rys. 4.19. Podstawowy przycisk ze zdefiniowanymi czterema ujęciami kluczowymi
Rys. 4.20. Listwa czasowa klipu filmowego z menu rozwijanym zawiera dwa ujęcia kluczowe, jedno w klatce pierwszej, drugie w klatce trzeciej
|
Złożone przyciski Kombinacje niewidzialnych przycisków, przycisków zawierających animowane sekwencje, czy w pełni animowanych przycisków, jak również klipów filmowych można wykorzystać do przygotowania złożonych przycisków, na przykład menu rozwijanych. Menu rozwijane jest rodzajem przycisku, powszechnie spotykanym w komputerowych systemach operacyjnych i interfejsach witryn sieciowych, umożliwiającym prezentowanie wielu możliwości wyboru pod pojedynczym nagłówkiem. W działaniu wygląda to tak, że jeden przycisk rozwija się w listę zawierającą więcej przycisków, a następnie zwija do postaci jednego przycisku po dokonaniu wyboru (rys. 4.18). Budując własne menu rozwijane, zaczynamy od umieszczenia przycisków w klipie filmowym. Przyciski określają, które klatki z listwy czasowej klipu będą odtwarzane. Rozwijanie i zwijanie menu też jest określane w klipie filmowym. Po umieszczeniu klonu klipu na scenie zyskujesz dostęp zarówno do stanu rozwiniętego, jak i zwiniętego, niezależnie od tego, co dzieje się w twoim głównym filmie.
W celu utworzenia
|
|
Rys. 4.21. Dwa stany twojego menu rozwijanego. Stan wyjściowy (menu zwinięte) jest umieszczony w pierwszym ujęciu kluczowym (po lewej); menu w stanie rozwiniętym znajduje się w drugim ujęciu kluczowym (po prawej). Menu rozwinięte zawiera cztery klony przycisków, reprezentujące możliwości wyboru
Rys. 4.22. Ten przycisk nakazuje przeglądarce rozpoczęcie odtwarzania klatki o nazwie expanded i zatrzymanie po odtworzeniu tej klatki
Rys. 4.23. Ten przycisk nakazuje przeglądarce rozpoczęcie odtwarzania klatki o nazwie collapsed i zatrzymanie po odtworzeniu tej klatki |
Rys. 4.24. Ostateczny wygląd listwy czasowej klipu filmowego z menu rozwijanym. Akcja stop przypisana jest pierwszej klatce w górnej warstwie
Rys. 4.25. Obydwa stany menu rozwijanego funkcjonują niezależnie od głównej listwy czasowej
|
|
W celu utworzenia
gotoAndPlay ("expanded"); Spowoduje to odtworzenie ujęcia o nazwie expanded (rys. 4.26).
|
Rys. 4.26. Akcje przypisane pierwszemu przyciskowi w ujęciu kluczowym collapsed menu rozwijanego
Rys. 4.27. Klip filmowy z menu rozwijanym. Przyciski pojawiające się po rozwinięciu menu umieszczono w oddzielnych warstwach, dzięki czemu można je animować
|
Tabela 4.1. Opis zdarzeń myszy |
Manipulatory zdarzeń Manipulatory zdarzeń to akcje, które odpowiadają za reakcję na pewne czynności, nazywane zdarzeniami, wykonywane przez użytkownika filmu Flasha. Naciskanie i zwalnianie klawisza myszy, wciskanie klawisza na klawiaturze - to przykłady zdarzeń. Manipulatory zdarzeń wykrywają, czy nastąpiło zdarzenie, a jeżeli tak, to wykonują w odpowiedzi określoną akcję. Na przykład, w poprzednich ćwiczeniach przypisywałeś przyciskom akcje, które pozwalały wykryć zdarzenie zwolnienia przycisku myszy. W odpowiedzi, Flash odtwarzał ujęcie kluczowe przedstawiające zwinięte lub rozwinięte menu. Zdarzeniami myszy są wszystkie zdarzenia związane z ruchem wskaźnika i naciskaniem klawiszy urządzenia. Gdy przypisujesz akcję do klonu przycisku, Flash automatycznie umieszcza ją w nawiasach i dodaje domyślne zdarzenie myszy Release: on (release) { } Zdarzenie Release jest typowym sposobem na interaktywne wykorzystanie myszy. Dowolna akcja ujęta w klamrach będzie wykonana, gdy wskaźnik znajduje się w obrębie aktywnego obszaru symbolu przycisku (stan Hit) - dopiero po zwolnieniu klawisza myszy. Dzięki temu użytkownik może zmienić zdanie i zwolnić klawisz w „bezpiecznym” miejscu, poza obszarem aktywnym przycisku, nawet jeśli zdążył już go kliknąć. Inne typy zdarzeń myszy pozwalają w jeszcze większym zakresie projektować interaktywne funkcje myszy. Wymieniono je wszystkie w tabeli 4.1. W celu wybrania zdarzenia myszy:
|
|
Zdarzenie myszy Wyzwalane, gdy: |
|
|
on (press) |
Wskaźnik jest w obrębie obszaru aktywnego (Hit) i wciśnięto klawisz myszy. |
|
on (release) |
Wskaźnik jest w obrębie obszaru aktywnego, a klawisz myszy został wciśnięty i zwolniony. |
|
on (release Outside) |
Wskaźnik jest w obrębie obszaru aktywnego, a klawisz myszy został wciśnięty i zwolniony poza obszarem aktywnym. |
|
on (roll Over) |
Wskaźnik jest przesuwany w obrębie obszaru aktywnego. |
|
on (rollOut) |
Wskaźnik jest przesuwany z obszaru aktywnego poza ten obszar. |
|
on (drag Over) |
Wskaźnik znajduje się w obrębie obszaru aktywnego i wciśnięto klawisz myszy. Następnie wskaźnik jest przesuwany poza obszar aktywny i potem z powrotem nad ten obszar, przy czym klawisz myszy jest ciągle wciśnięty. |
|
on (dragOut) |
Wskaźnik znajduje się w obrębie obszaru aktywnego i wciśnięty jest klawisz myszy. Następnie wskaźnik zostaje przesunięty poza obszar aktywny, przy czym klawisz myszy pozostaje wciśnięty. |
|
|
|
|
Rys. 4.28. Blok edycji parametrów w przypadku akcji on zawiera listę pól wyboru różnych zdarzeń |
|
Wskazówki
on (rollOver) { play (); } on (rollOut) { stop (); }
|
Rys. 4.29. Menu rozwijane ze zdarzeniem Roll Over. Kiedy poruszysz wskaźnik nad przyciskiem, menu zostanie natychmiast rozwinięte
Rys. 4.30. W przypadku wykrycia zdarzenia Press lub Release, wykonana zostanie akcja play
|
Rys. 4.31. Stan Over symbolu przycisku (u góry) definiuje jego wygląd w momencie, gdy wskaźnik znajdzie się w obrębie obszaru aktywnego. Manipulator zdarzenia Roll Over, przypisany do klonu (u dołu), określa działanie przycisku gdy wskaźnik jest w obrębie obszaru aktywnego
|
|
Klon przycisku może być zdefiniowany za pomocą palety Instance na jeden z dwóch sposobów: Track as Button (traktuj jako przycisk) lub Track as Menu Item (traktuj jako element menu) (rys. 4.32). Wybór właściwego sposobu decyduje o tym, czy klon przycisku otrzyma zdarzenie nawet po tym, gdy nastąpiło ono dla innego klonu. Na taką sytuację zezwala jedynie druga opcja, czyli Track as Menu Item. Opcją domyślną jest jednak Track as Button i określa ona typowe zachowanie przycisków, czyli powoduje, że jedno zdarzenie myszy oddziałuje na jeden klon przycisku. Bardziej złożone przypadki, w rodzaju menu rozwijanych, wymagają współpracy wielu klonów jednocześnie. Wyobraź sobie na przykład, że wciskasz i przytrzymujesz przycisk menu, chcąc zobaczyć możliwości wyboru, następnie wskazujesz wybraną pozycję i wtedy zwalniasz przycisk. Flash musi więc rozpoznać zdarzenie Release (zwolnienie) w menu rozwiniętym, chociaż zdarzenie Press (wciśnięcie) wystąpiło dla innego klonu przycisku (w zasadzie także dla innej klatki), przedstawiającego menu w postaci zwiniętej. Wybór opcji Track as Menu Item pozwala zaakceptować te zdarzenia i jednocześnie daje ci swobodę w tworzeniu różnych kombinacji zdarzeń myszy.
W celu
|
Rys. 4.32. Określanie sposobu funkcjonowania przycisku w oknie palety Instance
Rys. 4.33. Przyciskowi menu zwiniętego przypisujemy zdarzenie Press
|
Rys. 4.34. Wszystkie klony przycisku dla menu rozwiniętego muszą mieć ustawioną opcję Track as Menu Item. Dotyczy to przycisków button 1 do button 4 w ujęciach kluczowych 9. i 12
|
Teraz klony przycisku w menu rozwiniętym będą akceptować zdarzenie release po tym, jak zdarzenie press wystąpi w odniesieniu do innego klonu.
Wskazówka
|
W celu
on (dragOver) { gotoAndStop ("collapsed"); }
|
Rys. 4.35. Kiedy wskaźnik myszy opuszcza obszar jednego z przycisków widocznych w rozwiniętym menu, jest jednocześnie przesuwany nad obszarem niewidzialnego przycisku rezydującego w dolnej warstwie. W tym momencie jest wykrywane zdarzenie myszy Drag Over i rozpoczyna się odtwarzanie klatki z etykietą collapsed
|
Rys. 4.36. Blok edycji parametrów dla akcji on zawiera m. in. zdarzenie Key Press
Rys. 4.37. Klon przycisku dla zdarzenia Key Press umieszczamy tuż obok sceny
|
Informacje Klawiatura jest równie ważnym elementem w funkcjonowaniu interfejsu, co mysz, tak więc Flash pozwala także na detekcję zdarzeń wyzwalanych wciśnięciem pojedynczego klawisza. Stwarza to możliwość projektowania systemów nawigacji bazujących na klawiaturze (korzystających np. z klawiszy strzałek lub klawiatury numerycznej) lub skrótów klawiaturowych powielających schematy nawigacyjne oparte na myszy. Co więcej, możliwe jest bieżące kontrolowanie tekstu wprowadzanego przez użytkownika w pustych polach okna filmu, chociaż takie pola tekstowe nie są zwykle powiązane ze zdarzeniami i wymagają osobnego omówienia (patrz - rozdział 10.). Teraz zajmiemy się zastosowaniem pojedynczych kombinacji klawiszy, wyzwalających określone działania przy użyciu zdarzenia Key Press oraz obiektu Key. Zdarzenia klawiaturowe Zdarzenie Key Press stanowi opcję dostępną w bloku edycji parametrów dla akcji on (rys. 4.36). Żeby skorzystać ze zdarzenia Key Press, musisz wcześniej utworzyć symbol przycisku i umieścić jego klon na listwie czasowej. Klon symbolu przycisku zachowuje się jak pojemnik na zdarzenia i skojarzone z nimi akcje, powinieneś więc uczynić przycisk niewidzialnym lub też umieścić go poza sceną. Nie będzie wtedy widoczny w ostatecznym pliku wyeksportowanym do formatu SWF.
W celu
|
|
Rys. 4.38. Pole Key Press pozwala wprowadzić pojedynczy znak - w tym przypadku strzałkę w prawo (Right)
Rys. 4.39. Zaznaczamy akcję Go To i w polu Type wybieramy Next Frame
Rys. 4.40. Ten film zawiera cztery wyświetlane na scenie - jeden po drugim - obrazy. Zdarzenie on (keyPress ”<right>”) z odpowiedzią w postaci opcji nextFrame umożliwia przejście do następnego obrazu po wciśnięciu klawisza prawej strzałki |
Rys. 4.41. Nowa akcja on została dodana zaraz po klamrze zamykającej pierwszą akcję on
Rys. 4.42. Kolejne zdarzenie Key Press wymaga dwóch oddzielnych wyrażeń dla akcji on
Rys. 4.43. Klawisz strzałki w prawo (Right) został przypisany do dwóch zdarzeń, on (release) oraz on (keyPress ”<Right>”). Obydwa zdarzenia powodują przejście do odtwarzania kolejnej klatki
|
W celu
W celu
Wskazówki
|
Obiekt Key stanowi klasę w języku ActionScript, odpowiedzialną za detekcję klawiszy wciskanych na klawiaturze (rys. 4.44). Z rozdziału 3. dowiedziałeś się, że aby móc użyć klasy, trzeba najpierw utworzyć jej klon. Jednakże obiekt Key jest jednym z podstawowych obiektów, niepotrzebujących funkcji konstruktora do przygotowania klonu przed użyciem tego obiektu. Obiekt Key posiada metody pozwalające określić ostatnio wciśnięty klawisz lub sprawdzić, czy konkretny klawisz został wciśnięty. Najczęściej używaną jest metoda isDown, której argumentem jest specyficzny klawisz na klawiaturze. Metoda ta sprawdza, czy klawisz ten został wciśnięty, a jeżeli tak, to zwraca wartość prawdy. Wszystkie klawisze posiadają we Flashu odpowiednie oznaczenia cyfrowe, nazywane ich wartością kodową (dodatek B). Kodów tych używa się łącznie z metodą isDown do konstruowania wyrażeń warunkowych, wprowadzających interakcję za pomocą klawiatury. Przykładowo, Key.isDown(32) zwraca prawdę lub fałsz, w zależności od tego, czy wciśnięto klawisz spacji, którego wartość kodowa wynosi 32. |
Rys. 4.44. Okno narzędzi palety akcji zawiera metody i właściwości obiektu Key
|
Obiekt Key a zdarzenie Key Press |
|
Dlaczego miałbyś używać obiektu Key i jego metod oraz właściwości, zamiast przycisku ze zdefiniowanym zdarzeniem Key Press? Właściwie jest to sprawa wyboru pomiędzy wyrafinowaniem a łatwością w użyciu (i upraszczaniem sobie życia). Obiekt Key jest znacznie bardziej użyteczny, niż zdarzenie klawiaturowe przypisane do klonu przycisku - z uwagi na możliwość konstruowania bardziej złożonego kodu dla obiektu Key. Na przykład, możesz sprawdzać kombinacje klawiszy, wymagając - przed wykonaniem akcji stanowiących odpowiedź - sprawdzenia prawdziwości dwóch metod isDown. |
Używanie wartości kodowych klawiszy daje dostęp praktycznie do całej klawiatury. Także klawisze funkcyjne i klawisz Escape posiadają wartości kodowe, tak więc są dostępne dla obiektu Key. Z drugiej strony, zdarzenia Key Press są o wiele łatwiejsze w użyciu. Jeżeli nie potrzebujesz w swoim filmie rozbudowanej interakcji za pomocą klawiatury albo chciałbyś jedynie udostępnić skróty klawiaturowe, towarzyszące zdarzeniom myszy, używaj raczej akcji on (keyPress).
|
Rys. 4.45. Wyrażenie if zawiera warunek, który będzie sprawdzany. W przypadku jego spełnienia zostanie wykonana akcja ujęta w klamrach
Rys. 4.46. Pole Condition w bloku edycji parametrów wyrażenia if. Metoda isDown wymaga podania wartości kodowej
Rys. 4.47. Właściwość key.SPACE wprowadzono jako kod klawisza dla metody isDown
Rys. 4.48. Okno skryptu prezentujące odpowiedź na zdarzenie, polegające na wciśnięciu klawisza spacji
|
Na szczęście nie musisz nieustannie sięgać po nieporęczne kody klawiszy. Najczęściej używane klawisze są domyślnie przypisane obiektowi Key jako jego właściwości. Te właściwości to stałe, których można używać w miejsce kodów klawiszy. Na przykład, wyrażenie Key.isDown(32) jest równoważne wyrażeniu Key.isDown(Key.SPACE). Pełną listę metod i właściwości obiektu Key znajdziesz w dodatku A.
W celu
|
gotoAndPlay(1). Drugie ujęcie kluczowe wraca do pierwszego, a dzieje się to w pętli, więc warunek w wyrażeniu jest nieustannie sprawdzany. Jest to też najprostszy sposób na sprawdzanie wyrażenia if (rys. 4.49). Z kolejnych rozdziałów dowiesz się więcej o stosowaniu warunków i pętli akcji. Jednak już w tej chwili potrafisz sprawdzić metodę isDown i różne właściwości obiektu Key, korzystając z tej podstawowej pętli.
W celu
Właściwość key.CONTROL pojawi się jako argument drugiej metody isDown. Warunek zostanie spełniony i spowoduje wykonanie akcji ujętej w klamrach tylko wtedy, gdy jednocześnie zostaną wciśnięte klawisz spacji oraz Control. |
Rys. 4.49. Ten film będzie odtwarzany w pętli od klatki 1. do klatki 2. - do momentu wciśnięcia klawisza spacji
Rys. 4.50. Dodaj operator && dostępny w oknie narzędzi lub po prostu wpisz go w polu Condition za pierwszą metodą Key
Rys. 4.51. Druga metoda isDown występuje zaraz za pierwszą i jest z nią powiązana operatorem &&
Rys. 4.52. Dla spełnienia tego warunku konieczne jest jednoczesne wciśnięcie klawiszy spacji oraz Control
|
Rozdział 4.
116
115
Zaawansowane przyciski i interakcja z użytkownikiem
4
Zaawansowane przyciski
i interakcja z użytkownikiem
Obrazki umieszczone na scenie w oddzielnych ujęciach kluczowych
Dwa klony tego samego symbolu niewidzialnego przycisku
Akcja gotoAndPlay(1)
Sekwencje animacji ruchu klonu przycisku
Rys. 4.6. Jeżeli dla niewidzialnego przycisku zdefiniujesz tylko stan Over, będzie się on pojawiał tylko wtedy, kiedy wskaźnik myszy spocznie na aktywnym obszarze
Akcje przypisane do klonu przycisku w tym ujęciu kluczowym będą obowiązywać do następnego ujęcia kluczowego
Wszystkie 10 klatek symbolu klipu filmowego wciąż mogą być odtwarzane
Akcja Stop
Klon klipu filmowego z motylem rezyduje w pojedynczej klatce na głównej listwie czasowej
Scena
Sekwencja automatycznej animacji ruchu
Drugie ujęcie kluczowe
Pierwsze ujęcie kluczowe
Klip filmowy w ujęciu kluczowym zawierającym widok menu w stanie rozwiniętym
Klip filmowy w ujęciu kluczowym zawierającym widok menu w stanie początkowym (zwiniętym)
Akcja stop
Zaznacz to pole, żeby zmienić akcję gotoAndStop na akcję gotoAndPlay
Klon niewidzialnego przycisku
Niewidzialny przycisk
To ujęcie kluczowe powinno zawierać wyłącznie grafikę lub klipy filmowe
Rozwinięte menu
Klon niewidzialnego przycisku z przypisanym zdarzeniem klawiaturowym
Klon przycisku
Metoda Key zostaje wywołana i sprawdzona
Akcja gotoAndPlay(1) powoduje utworzenie pętli
Obraz przedstawiający kobietę skaczącą wzwyż w klatce 10.
Niewidzialne przyciski
Niewidzialne przyciski
Animowane przyciski
Przyciski i symbol klipu filmowego
Przyciski i symbol klipu filmowego
Złożone przyciski
Złożone przyciski
Manipulatory zdarzeń
Sposoby funkcjonowania przycisków
Sposoby funkcjonowania przycisków
Informacje wprowadzane z klawiatury
Obiekt Key
Obiekt Key
Przyciski i interakcja z użytkownikiem
Niewidzialne przyciski
Animowane przyciski
Przyciski i symbol klipu filmowego
Przyciski i symbol klipu filmowego
Złożone przyciski
Złożone przyciski
Manipulatory zdarzeń
Sposoby funkcjonowania przycisków
Informacje wprowadzane z klawiatury
Informacje wprowadzane z klawiatury
Obiekt Key