r04-04, Księgozbiór, Studia, Informatyka


Część 3.

Zarządzanie czasem i informacją

0x08 graphic
0x08 graphic
0x08 graphic
0x08 graphic
0x08 graphic
0x08 graphic
0x08 graphic
0x08 graphic
0x08 graphic

0x08 graphic

Części składowe języka HTML


0x08 graphic
Wykorzystanie Flasha do tworzenia grafiki i animacji to tylko połowa zabawy. Możesz jeszcze wprowadzić interakcję z użytkownikiem za pomocą przycisków i języka ActionScript, pozwalających mu sprawować kontrolę nad ową grafiką i animacją. Interaktywność ma zasadnicze znaczenie w nawigowaniu po sieci i witrynach komercyjnych, jak również w procesie tworzenia gier, internetowych samouczków czy czegokolwiek innego, co wymaga od użytkownika dokonywania wyborów.

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ą.

0x08 graphic
0x08 graphic
0x08 graphic
0x08 graphic
Niewidzialne przyciski

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.

0x01 graphic

Rys. 4.1. Cztery ujęcia kluczowe symbolu przycisku

0x01 graphic

Rys. 4.2. Niewidzialny przycisk uzyskasz definiując tylko stan Hit

0x01 graphic

Rys. 4.3. Klony niewidzialnego przycisku umieszczone nad blokami tekstowymi

0x08 graphic
0x01 graphic

Rys. 4.4. Symbol niewidzialnego przycisku. Prostokątny kształt w ujęciu kluczowym Hit definiuje obszar aktywny przycisku

W celu
utworzenia niewidzialnego przycisku:

  1. Z menu Insert wybierz New Symbol. Pojawi się okno dialogowe Symbol Properties.

  2. Wpisz nazwę przycisku i w polu Behavior zaznacz opcję Button. Kliknij OK. W bibliotece zostanie utworzony nowy symbol przycisku i uruchomi się tryb edycji symbolu.

  3. Zaznacz ujęcie kluczowe Hit.

  4. Z menu Insert wybierz Keyframe. Wówczas zostanie utworzone nowe ujęcie kluczowe, odpowiadające stanowi Hit.

  5. Mając zaznaczone ujęcie kluczowe Hit, narysuj uniwersalny kształt, który posłuży jako obszar aktywny twojego niewidzialnego przycisku (rys. 4.4).

  6. Powróć do głównej listwy czasowej.

  7. Tak jak w przypadku każdego symbolu przycisku, przeciągnij klon symbolu z biblioteki na scenę. Przezroczysty niebieski kształt, który pojawił się na scenie, oznacza stan Hit (obszar aktywny) twojego niewidzialnego przycisku.

  8. Przesuń, wyskaluj i obróć klon niewidzialnego przycisku, aby pokrywał się z wybraną grafiką.

  9. Na palecie Actions przypisz akcję klonowi przycisku. Kiedy wybierzesz Control/ Enable Simple Buttons, przezroczysty niebieski obszar zniknie, ale wskaźnik przyjmie postać rączki, wskazując tym samym na obecność przycisku.

0x08 graphic
0x08 graphic
Etykietki narzędziowe czy pojawiające się komunikaty także można tworzyć za pomocą niewidzialnych przycisków. Wystarczy przygotować taką krótką informację w stanie Over niewidzialnego przycisku, a następnie rozmieścić klony wszędzie tam, gdzie informacja ma się pojawiać (rys. 4.5).

W celu utworzenia
etykietki narzędziowej
z niewidzialnymi przyciskami:

  1. Utwórz niewidzialny przycisk w sposób przedstawiony w poprzednim ćwiczeniu.

  1. Zaznacz stan Over i wstaw nowe ujęcie kluczowe.

  2. W stanie Over dodaj grafikę, która wyświetla informacje o konkretnym elemencie pojawiającym się na scenie lub w filmie (rys. 4.6).

  3. Powróć do głównej listwy czasowej filmu i rozmieść klony niewidzialnego przycisku w potrzebnych punktach.

Wskazówki

  • Zachowaj ostrożność, kiedy obracasz lub skalujesz klon, ponieważ działania te mają wpływ także na stan Over przycisku (rys. 4.7).

  • Musisz mieć świadomość tego, w jaki sposób niewidzialne przyciski są umieszczane w warstwach, a także pamiętać, że zachowują porządek określony stosem. Przycisk znajdujący się nad innym przyciskiem jest wobec niego nadrzędny i w rezultacie dezaktywuje przypisaną mu akcję.

0x01 graphic

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

0x01 graphic

0x01 graphic

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

0x08 graphic
0x08 graphic
0x08 graphic
0x08 graphic
0x08 graphic
0x01 graphic

Rys. 4.8. Akcja przypisana do tego klonu przycisku w kształcie balonika powoduje przejście do etykiety happy birthday i rozpoczęcie odtwarzania

0x01 graphic

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:

  1. Z menu Insert wybierz New Symbol i utwórz symbol przycisku.

  1. Powróć do głównej listwy czasowej i przeciągnij klon przycisku na scenę.

  2. Zaznacz klon i otwórz paletę akcji w trybie Normal Mode. Przypisz akcję twojemu klonowi (rys. 4.8).

  3. Utwórz animację ruchu, tak samo, jak dla zwykłego klonu symbolu graficznego. Wstaw nowe ujęcia kluczowe, przesuń poszczególne klony lub dokonaj ich transformacji, a następnie wybierz Motion Tween w palety Frames.

  4. Na końcu animacji ruchu dodaj akcję gotoAndPlay(1). Flash utworzy niekończącą się pętlę animacji dla twojego przycisku (rys. 4.9).

  1. 0x08 graphic
    0x08 graphic
    0x08 graphic
    Utwórz na listwie czasowej punkt, do którego akcja przypisana do klonu przycisku przenosi użytkownika.

  1. Przetestuj swój film. W czasie odtwarzania animacji klon przycisku jest aktywny i reaguje na wskaźnik myszy.

Wskazówka

  • Animowane klony przycisków używają akcji przypisanych do pierwszego ujęcia kluczowego sekwencji animacji ruchu (rys. 4.10). Dobrym pomysłem jest najpierw przypisanie akcji do klonu przycisku, a dopiero potem wykonanie animacji. W ten sposób wszystkie wstawiane później ujęcia kluczowe będą zawierać ten sam klon, z tymi samymi akcjami.

0x01 graphic

Rys. 4.10. Akcje przypisane animowanym klonom. W sekwencji animacji wykonywane są akcje przypisane do pierwszego klonu

0x08 graphic
0x08 graphic
0x08 graphic
0x08 graphic
0x08 graphic
0x01 graphic

Rys. 4.11. Klipy filmowe posiadają niezależne listwy czasowe

Animowane przyciski
i symbol klipu filmowego

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ć.

0x08 graphic
Klip filmowy jest unikalny pod jeszcze jednym względem - jest obiektem Flasha, co oznacza, że posiada metody i właściwości, które możesz kontrolować za pomocą języka ActionScript. W kolejnych rozdziałach powiemy o tym więcej, a na razie zobaczmy, w jaki sposób używa się klipów filmowych w kontekście przycisków.

W celu utworzenia klipu filmowego:

  1. Z menu Insert wybierz New Symbol. Otworzy się okno dialogowe Symbol Properties.

  1. Wpisz jakąś opisową nazwę dla twojego symbolu klipu filmowego, a następnie w opcji Behavior zaznacz pozycję Movie Clip i kliknij OK (rys. 4.12). Uruchomiony zostanie tryb edycji symbolu.

  2. Na listwie czasowej klipu filmowego przygotuj wybraną grafikę i animację (rys. 4.13).

  3. Powróć do głównej sceny. Twój klip filmowy będzie przechowywany w bibliotece w postaci symbolu i będziesz mógł wprowadzić go do sceny jako klon (rys. 4.14).

Wskazówka

  • Nowe klony klipów filmowych są automatycznie odtwarzane, poczynając od pierwszej klatki. Dotyczy to także klonów na różnych scenach. Wyobraź sobie, na przykład, animację klipu filmowego przedstawiającego wskazówkę zegara wykonującą pełny obrót, a startującą na godzinie dwunastej. Jeśli umieścisz klon tego klipu w scenie 1., a potem będziesz chciał kontynuować odtwarzanie filmu w scenie 2., Flash przyjmie, że klon w scenie 2. jest nowym elementem. To z kolei sprawi, że animacja klipu filmowego zostanie zresetowana i jej odtwarzanie rozpocznie się na nowo, ze wskazówką startującą na godzinie dwunastej.

0x01 graphic

Rys. 4.12. Stwórz nowy symbol klipu filmowego przez nadanie mu nazwy (Name) i określenie zachowania (Behavior)

0x01 graphic

Rys. 4.13. Symbol klipu filmowego przedstawiającego kręgi na wodzie zawiera sekwencję animacji owalu, powiększającego się i stopniowo znikającego

0x01 graphic

Rys. 4.14. Wprowadź klon symbolu klipu filmowego na scenę, przeciągając go z biblioteki

0x08 graphic
0x01 graphic

Rys. 4.15. Prosty symbol przycisku z owalami umieszczonymi we wszystkich czterech ujęciach kluczowych

W celu
utworzenia animowanego przycisku:

  1. Przygotuj symbol klipu filmowego, zawierający animację w sposób opisany w poprzednim ćwiczeniu.

  1. Utwórz symbol przycisku i zdefiniuj cztery ujęcia kluczowe odpowiadające stanom Up, Over, Down i Hit (rys. 4.15).

  2. W trybie edycji symbolu wybierz dla twojego przycisku któryś ze stanów Up, Over lub Down, w zależności od tego, kiedy ma być odtwarzana animacja.

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.

  1. 0x08 graphic
    Umieść na scenie klon twojego symbolu klipu filmowego (rys. 4.16).

  2. Wróć do głównej listwy czasowej i przeciągnij klon przycisku na scenę.

  3. Z menu Control wybierz Test Movie. Animacja klipu filmowego będzie odtwarzana nieprzerwanie po wskazaniu kursorem myszy utworzonego przycisku (rys. 4.17).

Wskazówka

  • Cykliczne odtwarzanie klipu filmowego można przerwać po umieszczeniu akcji stop w ostatnim ujęciu kluczowym jego symbolu. Klipy filmowe posiadają niezależne listwy czasowe, dlatego poddają się działaniu akcji kontrolujących ujęcia. Z drugiej strony, symbole graficzne nie mają tej właściwości.

0x01 graphic

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

0x01 graphic

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

0x08 graphic
0x08 graphic
0x08 graphic
0x08 graphic
0x08 graphic
0x01 graphic

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)

0x01 graphic

Rys. 4.19. Podstawowy przycisk ze zdefiniowanymi czterema ujęciami kluczowymi

0x01 graphic

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
prostego menu rozwijanego:

  1. Przygotuj symbol przycisku, który posłuży za przycisk nagłówka menu, oraz przyciski wyboru na rozwijanej liście. Wstaw wypełniony prostokąt do ujęć kluczowych Up, Over, Down i Hit (rys. 4.19).

  1. Utwórz nowy symbol klipu filmowego, a następnie przejdź do trybu edycji tego symbolu.

  2. Wstaw nowe ujęcie kluczowe w dalszym punkcie na listwie czasowej klipu filmowego. Masz teraz dwa ujęcia kluczowe. Pierwsze z nich będzie zawierać widok twojego menu w stanie zwiniętym, drugie - w stanie rozwiniętym (rys. 4.20).

  1. 0x08 graphic
    Przeciągnij jeden klon twojego symbolu przycisku do pierwszego ujęcia kluczowego. Umieść nad klonem tekst opisujący przycisk. Utworzyłeś właśnie widok menu w stanie zwiniętym.

  2. Przeciągnij następne klony symbolu przycisku do drugiego ujęcia kluczowego i wyrównaj je względem siebie. Umieść nad każdym z nich tekst opisujący działanie przycisku. W ten sposób utworzyłeś widok twojego menu w stanie rozwiniętym (rys. 4.21).

  3. Dodaj nową warstwę i wprowadź etykiety dla oznaczenia ujęć kluczowych z menu rozwiniętym oraz zwiniętym. Na palecie Frame, w polu Label, wpisz collapsed dla pierwszego ujęcia kluczowego i expanded dla drugiego ujęcia kluczowego. Wprowadzenie etykiet pozwala wyraźnie rozróżnić poszczególne stany klipu filmowego i użyć akcji gotoAndStop na etykietach ujęć, a nie na ich numerach.

  4. Zaznacz klon w pierwszym ujęciu kluczowym. Na palecie akcji wybierz Basic Actions/Go To.

  5. Z menu rozwijanego Type wybierz Frame Label. W polu Frame wpisz expanded. Usuń zaznaczenie z pola wyboru Go to and Play (rys. 4.22).

  6. Zaznacz wszystkie klony w ostatnim ujęciu kluczowym. Na palecie akcji wybierz Basic Actions/Go To.

  7. Z menu rozwijanego Type wybierz Frame Label. W polu Frame wpisz collapsed. Usuń zaznaczenie z pola wyboru Go to and Play (rys. 4.23).

0x01 graphic

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

0x01 graphic

Rys. 4.22. Ten przycisk nakazuje przeglądarce rozpoczęcie odtwarzania klatki o nazwie expanded i zatrzymanie po odtworzeniu tej klatki

0x01 graphic

Rys. 4.23. Ten przycisk nakazuje przeglądarce rozpoczęcie odtwarzania klatki o nazwie collapsed i zatrzymanie po odtworzeniu tej klatki

0x08 graphic
0x08 graphic
0x08 graphic
0x08 graphic
0x08 graphic
0x08 graphic
0x08 graphic

0x01 graphic

Rys. 4.24. Ostateczny wygląd listwy czasowej klipu filmowego z menu rozwijanym. Akcja stop przypisana jest pierwszej klatce w górnej warstwie

0x01 graphic

Rys. 4.25. Obydwa stany menu rozwijanego funkcjonują niezależnie od głównej listwy czasowej

  1. Dodaj trzecią warstwę i w pierwszym ujęciu kluczowym wprowadź akcję stop. Gdybyś nie przypisał tej akcji w pierwszej klatce twojego klipu filmowego, zobaczyłbyś, jak menu nieustannie otwiera się i zamyka, co powodowałaby cykliczność odtwarzania klipów filmowych. Akcja stop powoduje, że klip filmowy zatrzymuje się na klatce 1. tak długo, aż klikniesz przycisk menu (rys. 4.24).

  2. Powróć do listwy czasowej głównego filmu i umieść na scenie klon twojego klipu filmowego.

  3. Z menu Control wybierz Test Movie i zobacz, jak działa utworzone menu rozwijane. Okazuje się, że kiedy wciśniesz, a potem zwolnisz pierwszy przycisk, pojawią się przyciski wyboru. Dzieje się tak, ponieważ nakazujesz niejako przeglądarce rozpoczęcie odtwarzania ujęcia kluczowego, zawierającego menu w stanie rozwiniętym. Po kliknięciu i zwolnieniu któregoś z przycisków wyboru, przyciski te znikają i wracasz do ujęcia kluczowego na listwie czasowej klipu filmowego, zawierającego menu w stanie zwiniętym. Wszystko to dzieje się niezależnie od listwy czasowej głównego filmu, gdzie rezyduje klon przygotowanego przez ciebie klipu filmowego (rys. 4.25). Tak więc udało ci się zaprojektować złożony przycisk, pełniący rolę menu rozwijanego, które jednak nie robi nic (poza modyfikacją swojego wyglądu). W rozdziale 5. nauczysz się przypisywać przyciskom funkcje komunikacyjne, tym samym uzyskując możliwość tworzenia złożonych systemów nawigacji.

0x08 graphic
0x08 graphic
0x08 graphic
0x08 graphic
0x08 graphic
Kiedy zrozumiesz koncepcję funkcjonowania prostych menu rozwijanych, będziesz mógł przejść do tworzenia ich bardziej wyszukanych wersji, zawierających animacje przedstawiające przejście od stanu początkowego do stanu rozwinięcia. Mógłbyś na przykład sprawić, żeby zamiast pojawiającego się nagle menu, przyciski ładnie rozwijały się w dół.

W celu utworzenia
animowanego menu rozwijanego:

  1. Przygotuj proste menu rozwijane w sposób opisany w poprzednim ćwiczeniu.

  1. Przejdź do trybu edycji symbolu twojego klipu filmowego.

  2. W miejsce akcji gotoAndStop dla klonu przycisku w pierwszym ujęciu kluczowym przypisz akcję:

gotoAndPlay ("expanded");

Spowoduje to odtworzenie ujęcia o nazwie expanded (rys. 4.26).

  1. Utwórz sekwencje animacji klonów przycisku w ostatnim ujęciu kluczowym (rys. 4.27).

  2. Wstaw ujęcie kluczowe do ostatniej klatki klipu filmowego i przypisz akcję stop.

  3. Wróć do listwy czasowej głównego filmu i umieść na scenie klon twojego klipu filmowego.

  4. Z menu Control wybierz Test Movie i przekonaj się, jak działa twoje menu rozwijane. Po kliknięciu i zwolnieniu pierwszego przycisku nastąpi odtworzenie ujęcia z klipu filmowego o etykiecie expanded, zawierającego sekwencję animacji ruchu przycisków wyboru.

0x01 graphic

Rys. 4.26. Akcje przypisane pierwszemu przyciskowi w ujęciu kluczowym collapsed menu rozwijanego

0x01 graphic

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:

  1. Mając otwartą paletę akcji w trybie Normal Mode, wybierz Actions/on. W bloku edycji parametrów pojawią się różne typy zdarzeń wraz z polami wyboru (rys. 4.28).

  1. Zaznacz pole wyboru przy odpowiednim zdarzeniu, w zależności od tego, jakiej akcji potrzebujesz.

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.

0x01 graphic

Rys. 4.28. Blok edycji parametrów w przypadku akcji on zawiera listę pól wyboru różnych zdarzeń

  1. 0x08 graphic
    Wybierz akcję stanowiącą odpowiedź na wybrane zdarzenie.

  2. Z menu Control wybierz Test Movie i sprawdź działanie poszczególnych zdarzeń myszy (rys. 4.29).

Wskazówki

  • Dla wszystkich zdarzeń myszy - z wyjątkiem Release - musisz wybrać Control/Test Movie, jeśli chcesz zobaczyć działanie klonu przycisku. Zdarzenia te nie funkcjonują w środowisku edycyjnym, jeśli wybierzesz Control/Enable Simple Buttons.

  • Możliwe jest przypisanie pojedynczej akcji on więcej niż jednego zdarzenia myszy. Dla przykładu: akcja on (press, release) wykryje moment, w którym klawisz myszy zostaje wciśnięty, oraz moment, kiedy klawisz zostaje zwolniony, a także wyzwoli akcję zapisaną klamrach w przypadku wystąpienia jednego z tych zdarzeń (rys. 4.30).

  • Jeśli dla jednego klonu przycisku chcesz określić dwa zdarzenia o różnych konsekwencjach, musisz utworzyć oddzielne wyrażenia zawierające akcje on. Przykładowo, gdy zdarzenie Roll Over ma rozpoczynać, a zdarzenie rollOut kończyć odtwarzanie twojego filmu, to zapis akcji powinien wyglądać tak:

on (rollOver) {

play ();

}

on (rollOut) {

stop ();

}

0x01 graphic

Rys. 4.29. Menu rozwijane ze zdarzeniem Roll Over. Kiedy poruszysz wskaźnik nad przyciskiem, menu zostanie natychmiast rozwinięte

0x01 graphic

Rys. 4.30. W przypadku wykrycia zdarzenia Press lub Release, wykonana zostanie akcja play

0x08 graphic
0x08 graphic
0x08 graphic

0x01 graphic

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

  • Nie myl zdarzenia myszy rollOver ze stanem Over symbolu przycisku. Oczywiście działanie obydwu tych elementów obejmuje wykrycie momentu, w którym wskaźnik znajdzie się w obrębie obszaru aktywnego. Jednak stan Over opisuje wygląd przycisku, gdy wskaźnik znajduje się nad nim, natomiast zdarzenie rollOver przypisuje akcję w przypadku takiego ustawienia wskaźnika. Tak więc ujęcia kluczowe symbolu przycisku definiują jego wygląd, podczas gdy akcja zdarzenia myszy określa, co przycisk powoduje (rys. 4.31).

0x08 graphic
Sposoby
funkcjonowania przycisków

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
wybrania dla zdarzenia Press
opcji Track as Menu Item:

  1. Utwórz menu rozwijane w sposób opisany w jednym z poprzednich ćwiczeń, a następnie przejdź do trybu edycji symbolu klipu filmowego.

  1. Zaznacz klon przycisku w pierwszym ujęciu kluczowym i zmień zdarzenie myszy na press (rys. 4.33).

0x01 graphic

Rys. 4.32. Określanie sposobu funkcjonowania przycisku w oknie palety Instance

0x01 graphic

Rys. 4.33. Przyciskowi menu zwiniętego przypisujemy zdarzenie Press

0x08 graphic
0x01 graphic

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

  1. Zaznacz wszystkie klony przycisków w ujęciu kluczowym odpowiadającym menu rozwiniętemu i w polu Options palety Instance wybierz Track as Menu Item (rys. 4.34).

Teraz klony przycisku w menu rozwiniętym będą akceptować zdarzenie release po tym, jak zdarzenie press wystąpi w odniesieniu do innego klonu.

  1. Wróć do głównej listwy czasowej i przetestuj swój film. Teraz musisz nacisnąć klawisz myszy i przytrzymać, jeśli chcesz, by menu pozostało otwarte.

Wskazówka

  • Jeśli ustalisz dla powyższego menu rozwijanego opcję Track as Menu Item, klony przycisków przyjmują stan Down, kiedy przesuwasz po nich wskaźnik myszy. Dzieje się tak dlatego, że przycisk myszy został co prawda wciśnięty, jednak zdarzenie to nastąpiło wcześniej, w odniesieniu do innego klonu.

0x08 graphic
0x08 graphic
0x08 graphic
0x08 graphic
0x08 graphic
Spróbujmy teraz udoskonalić funkcjonowanie menu rozwijanego, wprowadzając zdarzenie myszy Drag Over, dzięki czemu menu zostanie zwinięte także w przypadku, gdy nie dokona się wyboru żadnego z elementów. Ważne jest bowiem, aby menu widoczne było w postaci rozwiniętej jedynie w czasie, gdy użytkownik dokonuje wyboru opcji menu.

W celu
wybrania dla zdarzenia Drag Over
opcji Track as Menu Item:

  1. Kontynuując pracę nad menu rozwijanym skonstruowanym w poprzednich ćwiczeniach, przejdź do trybu edycji symbolu klipu filmowego.

  1. Dodaj nową warstwę, umieszczając ją poniżej istniejących warstw.

  2. W nowej warstwie utwórz niewidzialny przycisk, a następnie umieść jego klon w nowym ujęciu kluczowym, odpowiadającym ujęciu kluczowemu przedstawiającemu menu rozwinięte. Twój niewidzialny przycisk powinien być nieco większy niż rozwinięte menu (rys. 4.35).

  3. Zaznacz klon niewidzialnego przycisku i na palecie Instance wybierz opcję Track as Menu Item.

  4. Korzystając z palety akcji, przypisz następującą akcję:

on (dragOver) {

gotoAndStop ("collapsed");

}

  1. Wróć do głównej listwy czasowej i przetestuj swój film. Klon niewidzialnego przycisku, umieszczony pod rozwiniętym menu, wykryje moment, w którym wskaźnik myszy opuszcza obszar któregoś z pozostałych klonów przycisków, a wtedy odtwarzanie klipu filmowego zostanie cofnięte do klatki 1., zwijając tym samym menu.

0x01 graphic

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

0x08 graphic
0x08 graphic
0x08 graphic
0x08 graphic
0x08 graphic
0x01 graphic

Rys. 4.36. Blok edycji parametrów dla akcji on zawiera m. in. zdarzenie Key Press

0x01 graphic

Rys. 4.37. Klon przycisku dla zdarzenia Key Press umieszczamy tuż obok sceny

Informacje
wprowadzane z klawiatury

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
utworzenia zdarzenia Key Press:

  1. Utwórz symbol niewidzialnego przycisku w sposób opisany wcześniej w tym rozdziale.

  1. Umieść klon przycisku na scenie lub zaraz obok sceny - w pierwszym ujęciu kluczowym (rys. 4.37).

  1. 0x08 graphic
    0x08 graphic
    0x08 graphic
    0x08 graphic
    0x08 graphic
    0x08 graphic
    0x08 graphic
    Zaznacz klon i otwórz paletę akcji.

  2. Wybierz Actions/on. W oknie skryptu pojawi się manipulator zdarzenia on (release).

  3. W bloku edycji parametrów usuń zaznaczenie opcji Release i zaznacz Key Press.

  4. Wybierz specyficzny znak lub symbol z klawiatury i po prostu wpisz go w pustym polu obok pola wyboru Key Press (rys. 4.38).

  5. Wybierz akcję wyzwalaną po wykryciu zdarzenia Key Press (rys. 4.39).

  6. Z menu Control wybierz Test Movie i zobacz, jak odpowiada zdarzenie Key Press (rys. 4.40).

0x01 graphic

Rys. 4.38. Pole Key Press pozwala wprowadzić pojedynczy znak - w tym przypadku strzałkę w prawo (Right)

0x01 graphic

Rys. 4.39. Zaznaczamy akcję Go To i w polu Type wybieramy Next Frame

0x01 graphic

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

0x08 graphic
0x08 graphic
0x08 graphic
0x01 graphic

Rys. 4.41. Nowa akcja on została dodana zaraz po klamrze zamykającej pierwszą akcję on

0x01 graphic

Rys. 4.42. Kolejne zdarzenie Key Press wymaga dwóch oddzielnych wyrażeń dla akcji on

0x01 graphic

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

  • Klawisz Escape oraz klawisze funkcyjne nie są odpowiednie do przypisywania im zdarzeń.

  • Zdarzenie Key Press nie rozpoznaje kombinacji klawiszy, jakkolwiek Flash odróżnia litery wielkie od małych.

W celu
utworzenia złożonego zdarzenia
Key Press:

  1. Zaznacz klon przycisku zawierający pierwsze zdarzenie Key Press.

  1. Otwórz paletę Object Actions.

  2. Dodaj oddzielną akcję on (rys. 4.41).

  3. W bloku edycji parametrów - dla drugiej akcji on zmień zdarzenie na Key Press i wybierz inny klawisz.

  4. Dodaj kolejną akcję wyzwalaną po wykryciu drugiego zdarzenia Key Press (rys. 4.42). Chociaż złożone zdarzenia klawiaturowe mogą być skojarzone z jednym klonem przycisku, każde zdarzenie wymaga oddzielnego wyrażenia.

W celu
połączenia zdarzenia Key Press
ze zdarzeniem myszy:

  1. Utwórz symbol przycisku i zdefiniuj jego stany Up, Over, Down i Hit.

  1. Umieść na scenie klon przycisku.

  2. Zaznacz klon i otwórz paletę akcji.

  3. Wybierz Actions/on.

  4. W bloku edycji parametrów dla akcji on zaznacz pola wyboru Release oraz Key Press.

  5. Wybierz akcję dla manipulatora zdarzenia i przetestuj swój film (rys. 4.43). Teraz kliknięcie myszą lub wciśnięcie klawisza na klawiaturze spowoduje, że film wykona wybraną przez ciebie akcję.

Wskazówki

  • Kiedy twój film Flasha jest odtwarzany w przeglądarce, musisz najpierw kliknąć okno filmu, zanim będzie mogło być wykryte jakiekolwiek zdarzenie klawiaturowe, a jest to konieczne z uwagi na ustalenie aktywnego okna.

0x08 graphic
Obiekt Key

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.

0x01 graphic

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).

0x08 graphic
0x01 graphic

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

0x01 graphic

Rys. 4.46. Pole Condition w bloku edycji parametrów wyrażenia if. Metoda isDown wymaga podania wartości kodowej

0x01 graphic

Rys. 4.47. Właściwość key.SPACE wprowadzono jako kod klawisza dla metody isDown

0x01 graphic

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
użycia metody isDown obiektu Key:

  1. Zaznacz pierwsze ujęcie kluczowe na listwie czasowej i otwórz paletę akcji w trybie Normal Mode.

  1. Wybierz Actions/if. W oknie skryptu pojawi się niedokończone wyrażenie if, z pustym polem Condition w bloku edycji parametrów (rys. 4.45).

  2. Zaznacz puste pole Condition w bloku edycji parametrów.

  3. Wybierz Objects/Key/isDown lub przeciągnij metodę isDown do pola Condition. Metoda isDown pojawi się w polu Condition. Dla tej metody wymaga się argumentu keyCode (rys. 4.46).

  4. Wybierz Objects/Key/SPACE lub przeciągnij właściwość SPACE do pola Condition. Właściwość Key.SPACE pojawi się jako argument metody isDown (rys. 4.47).

  5. Wybierz akcję stanowiącą odpowiedź dla tego wyrażenia warunkowego (rys. 4.48).

  1. 0x08 graphic
    0x08 graphic
    0x08 graphic
    0x08 graphic
    0x08 graphic
    0x08 graphic
    0x08 graphic
    Wstaw nowe ujęcie kluczowe zaraz za pierwszym, a następnie przypisz akcję kontrolującą ujęcia:

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
utworzenia kombinacji klawiszy
z metodą isDown obiektu Key:

  1. Zaznacz pierwsze ujęcie kluczowe w projekcie, nad którym pracowałeś w poprzednim ćwiczeniu, i otwórz paletę akcji w trybie Normal Mode.

  1. Wybierz wyrażenie if. W bloku edycji ujrzysz warunek (Condition) wraz z metodą i właściwością obiektu Key.

  2. W bloku edycji parametrów kliknij pole Condition, naciśnij spację, a następnie wybierz Actions/Operators/&&. Jeszcze raz naciśnij spację (rys. 4.50).

  3. W polu Condition, za operatorem &&, wybierz Objects/Key/isDown. Metoda isDown pojawi się w polu Condition za operatorem &&. Dla tej metody jest wymagany kolejny argument (rys. 4.51).

  4. Wybierz Objects/Key/CONTROL lub przeciągnij właściwość CONTROL do pola Condition (rys. 4.52).

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.

0x01 graphic

Rys. 4.49. Ten film będzie odtwarzany w pętli od klatki 1. do klatki 2. - do momentu wciśnięcia klawisza spacji

0x01 graphic

Rys. 4.50. Dodaj operator && dostępny w oknie narzędzi lub po prostu wpisz go w polu Condition za pierwszą metodą Key

0x01 graphic

Rys. 4.51. Druga metoda isDown występuje zaraz za pierwszą i jest z nią powiązana operatorem &&

0x01 graphic

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



Wyszukiwarka

Podobne podstrony:
rB-04, Księgozbiór, Studia, Informatyka
r00-04, Księgozbiór, Studia, Informatyka
Podz-04, Księgozbiór, Studia, Informatyka
rA-04, Księgozbiór, Studia, Informatyka
r05-04, Księgozbiór, Studia, Informatyka
r09-04, Księgozbiór, Studia, Informatyka
r08-04, Księgozbiór, Studia, Informatyka
r11-04, Księgozbiór, Studia, Informatyka
r12-t, Księgozbiór, Studia, Informatyka
Metalurgia wyklad 04, Księgozbiór, Studia, Metalurgia
Informatyka-wyklady, Księgozbiór, Studia, Informatyka

więcej podobnych podstron