|
SWiSH Forum Forum użytkowników programów SWiSH |
 |
Podstawy języka skryptowego - Lekcja 19. Reakcja animacji na klawiaturę
roland - Pon 05 Wrz, 2005 13:07 Temat postu: Lekcja 19. Reakcja animacji na klawiaturę Określony skrypt może zostać wykonany przy okazji takiego zdarzenia, jak wciśnięcie określonego klawisza na klawiaturze. Służy do tego polecenie on (keyPress()).
Spróbujmy utworzyć skrypt pozwalający przesuwać obiekt o nazwie Prostokat w obszarze animacji, przypisując mu następujący skrypt:
Kod: | on (keyPress("<Right>")) {
Prostokat._x += 1;
}
on (keyPress("<Left>")) {
Prostokat._x -= 1;
} |
Na jakie klawisze animacja może reagować? Mogą to być wszystkie znaki drukowalne oraz:
• "<Space>" – spacja
• "<Left>" – strzałka w lewo
• "<Right>" – strzałka w prawo
• "<Up>" – strzałka w górę
• "<Down>" – strzałka w dół
• "<Home>" – klawisz Home
• "<End>" – klawisz End
• "<PageUp>" – klawisz Page Up
• "<PageDown>" – klawisz Page Down
• "<Insert>" – klawisz Insert
• "<Delete>" – klawisz Del / Delete
• "<Backspace>" – klawisz Backspace
• "<Tab>" – klawisz tabulatora
• "<Enter>" – Enter
• "<Escape>" – klawisz Esc
Rozróżniane są małe i wielkie znaki. I tak następujący skrypt:
Kod: | on (keyPress("A")) {
Prostokat._alpha += 1;
}
on (keyPress("a")) {
Prostokat._alpha -= 1;
} |
pozwoli zmieniać przezroczystość obiektu. Wciskając wielką literę „A” zmniejszamy przezroczystość, a małą literą „a” zwiększamy przezroczystość.
Spróbuj samodzielnie przypisać określonym klawiszom skrypty pozwalające przesunąć obiekt w górę i dół, obrócić obiekt w prawo oraz lewo.
jaro88 - Nie 17 Wrz, 2006 19:39 Temat postu: Oczekuje na akceptację
roland - Pon 18 Wrz, 2006 07:17
Jak ma reagować na klawisze opisałem właśnie pod koniec tej lekcji, natomiast jak ma reagować na ciągi znaków?
A kiedy ma wiedzieć czy wpisując "1" ma już wykonać jakąś akcję, czy też czekać, bo być może będzie wciśnięte jeszcze jedno "1"? Należałoby wtedy wprowadzić umowny znak, po którym dopiero realizowana by była określona funkcja. Na przykład wpisujemy cały czas cyfry, a dodaje je ciągle na końcu poprzednio zapamietanych znaków, aż zostanie naciśnięty np. "Enter" i dopiero wtedy wykonywana by była określona funkcja. Wymaga to już jednak trochę bardziej rozbudowanego kodu.
|
|