Klasa Canvas jest to domyslnie dostępna klasa w JavaME. Dzięki niej możemy rysować na ekranie telefonu.. :) Zazwyczaj implementacja użycia klasy najlepiej wygląda poprzez stworzenie własnej klasy dziedziczącej po Canvas. Przeciężamy wtedy metody i korzystamy z klasy nadrzędnej jak z interfejsu. Przed przykładem opiszę co ta klasa potrafi czyli jej ciekawsze metody i stałe…
keyPressed(int keyCode) – event na naciśniecie klawisza
keyReleased(int keyCode) – na zwolnienie klawisza
keyRepeated(int keyCode) – trzymanie klawisza
pointerDragged(int x, int y) – przytrzymanie wskaźnika (np palcem po ekranie telefonu)
pointerPressed(int x, int y) – naciśniecie na ekran telefonu
pointerReleased(int x, int y) – puszczenie ekranu telefonu
repaint() – przerysowywuje ekran.
getHeight() – zwraca wysokość ekranu.
getWidth() – zwraca szerokość ekranu.
Proste, nie? Założmy że chcialibyśmy mieć aplikację, która pozwala rysować palcem po ekranie. Aaa no i jeszcze jest klasa Graphics, które instancja jest do używa w metodzie paint(Graphics g) ale metody tej klasy służą już tylko do rysowania i są dość intuicyjnie nazywane.
Jak powinno działać takie rysowanie po ekranie? Po naciśnięciu na ekran, powinno się odczytać aktualną wartość położenia kursora i w tym miejscu powinno się położyć kropkę. I powielać to za każdym przesunieciem myszki, co da efekt prostego rysowania po ekranie :)
Popatrzmy na kod:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 | public class CanvasDemo extends Canvas{ int x,y; protected void pointerDragged(int x, int y){ this.x=x; this.y=y; repaint(); } protected void paint(Graphics g) { g.setColor (255,255,255); g.drawLine(x,y,x,y); } } |
Proste, prawda? W metodzie która obłsuguje zdarzenie „przeciągaj po ekranie” która pobiera aktualne wartość wskazywanego obszaru. Repaint wywołuje paint() która rysuje kropkę w zadanym punktcie. Wykorzystam teraz swoj brak talentu do rysowania i zaprezentuje jak to działa :)
(… po kilku minutach..)
To tak w ramach wykorzystania tematu.. :) No i korzystając już ze światecznej atmosfery – wszystkiego co najlepsze, dla każdego z osobna.. :)
Ostatnio tygodnie były tak bardzo wypełnione, że nie udało mi się napisać nawet krótkiego podsumowanie. Więc dziś zbiorczo podsumuję luty… Read More
Zapraszam na krótkie podsumowanie miesiąca. Książki W styczniu przeczytałem "Homo Deus: Historia jutra". Książka łudząco podoba do wcześniejszej książki tego… Read More
Cześć! Zapraszam na podsumowanie roku 2023. Książki Zacznijmy od książek. W tym roku cel 35 książek nie został osiągnięty. Niemniej… Read More
Zapraszam na krótkie podsumowanie miesiąca. Książki W grudniu skończyłem czytać Mein Kampf. Nudna książka. Ciekawsze fragmenty można by było streścić… Read More
Cześć, ostatnio w Internecie pojawiło się dużo artykułów, które nie były przychylne pracy zdalnej. Z drugiej strony większość komentarzy pod… Read More
Zapraszam na krótkie podsumowanie miesiąca. Książki W listopadzie dokończyłem cykl "Z mgły zrodzony" Sandersona. Tylko "Stop prawa" mi nie do… Read More