W ostatnim artykule nauczyliśmy się wyświetlać obrazek. Nadszedł czas na trochę dynamizmu. Tym razem będziemy przesuwać rysunek za pomocą klawiszy.

1. Na początku wstawmy na formę odpowiednie komponenty :

Komponent -Proponowana nazwa
DXInput – DXInput
DXSpriteEngine – SEngine
DXTimer – DXTimer1
DXDraw – DXDraw1
DXImageList – DXImageList1

2. Deklarujemy nowy obiekt oparty o klasę TImageSprite. Jego zadaniem jest uzyskanie dostępu do procedury DoMove odpowiedzialnej na poruszanie rysunkiem. Poniższy kod należy umieścić przed type TForm1 = class(TForm)

Teraz pod implementation umieszczamy kod:

Jest to nasza procedura odpowiedzialna za ruch. Dodaliśmy do niej cztery warunki związane z wciśniętymi klawiszami. np. warunek 1

jeżeli(if) strzałka w górę jest(in) w zbiorze wciśniętych klawiszy wtedy(then) przesuń rysunek o 2 piksele w górę.

Obsługę poruszania obiektu mamy już z głowy. Teraz musimy stworzyć nasz obiekt i przypisać mu początkowe wartości. Dodaj jakiś obrazek, którym chcesz poruszać do DXImageList, a następnie przed implementation wpisz :

Zaś w OnCreate Formy :

Przejdźmy do OnTimer i dodajmy kod :

Po uruchomieniu programu zobaczymy nasz obrazek, którym będziemy mogli poruszać za pomocą klawiszy. Jeżeli masz wątpliwości zapoznaj się z kodem źródłowym.

Załączniki