Слайд 2GObject
Минулого разу ми розібралися майже з усіма підкласами GObject.
Залишилися:
GCompound
GPolygon
GImage
Слайд 3GImage
GImage клас, що використовується для відображення зображень з файлу.
new GImage(image file, x,y)
image
file – назва файлу
x,y – координати верхнього лівого кутка
Місце розташування файлу:
спочатку програма шукає файл в директорії проекту
якщо файлу немає в директорії проекту, пошук триває в піддиректорії - images
Слайд 4Приклад GImage
public void run(){
GImage image = new GImage(“Ukma.gif”);
add(image,0,0);
}
GImage реалізує інтерфейс Resizable, тому
ми можемо використати метод scale:
public void run(){
GImage image = new GImage(“Ukma.gif”);
image.scale(1.5, 0.5);
add(image,0,0);
}
Слайд 5GPolygon
GPolygon графічний об’єкт побудований з ліній.
Gpolygon має уявну контрольну точку (зазвичай це
центр фігури) відносно якої розташовані інші точки
Слайд 6GPolygon
Роботу краще розібрати на прикладі.
Спочатку ви створюєте порожній полігон.
Далі ви додаєте вершини,
по одній addVertex(x,y)
addEdge(dx,dy) додає грань з попереднєю точкою
Слайд 7GPolygon
Розглянемо приклад Diamond
Питання?
Слайд 8GCompound
Дозволяє об’єднати декілька компонентів в один і в подальшому працювати як з
єдиним об’єктом.
GCompound – так само має уявну точку відносно якої ви компонуєте інші об’єкти.
Коли GCompound розміщується на екран він розташовується згідно цієї уявної точки.
Розглянемо приклад DrawFace
Питання?
Слайд 9Приклад
Пам’ятає те приклад з стрибаючим м’ячиком?
Давайте тепер зробимо, що б стрибала наша
голова.
Я повністю скопіював текст старої програми в клас BouncingFace давайте внесемо корективи тепер.
Слайд 10Управління подіями
Що таке подія?
Які події в університеті?
Які події можуть відбуватися у вас
в програмі?
Для того, що б відслідковувати події, необхідно зареєструвати слухачів подій (listeners) які вас цікавлять.
Це дуже просто зробити:
addMouseListeners()
addKeyListeners()
Але спочатку необхідно зробити імпорт відповідної бібліотеки:
import java.awt.event.*;
Слайд 11Приклад
Розглянемо приклад ClickForFace
Питання?
Основні кроки:
run або init метод має зареєструвати необхідний слухач addMouseListeners()
написати
визначення необхідних методів слухачів
mouseClicked(e)
mousePressed(e)
mouseReleased(e)
mouseMoved(e)
mouseDragged(e)
параметр e – MouseEvent об’єкт
Слайд 12Приклад
Розглянемо приклад MouseTracker
Питання?
Робота з клавіатурою, основні кроки:
run або init метод має зареєструвати
необхідний слухач addKeyListeners()
написати визначення необхідних методів слухачів
keyPressed(e)
keyReleased(e)
keyTyped(e)
Слайд 13Приклад
Розглянемо приклад DragObjects
Питання?
Розглянемо приклад UfoGame
Питання?