МАРК РЕГНЕРУС ДОСЛІДЖЕННЯ: Наскільки відрізняються діти, які виросли в одностатевих союзах
РЕЗОЛЮЦІЯ: Громадського обговорення навчальної програми статевого виховання ЧОМУ ФОНД ОЛЕНИ ПІНЧУК І МОЗ УКРАЇНИ ПРОПАГУЮТЬ "СЕКСУАЛЬНІ УРОКИ" ЕКЗИСТЕНЦІЙНО-ПСИХОЛОГІЧНІ ОСНОВИ ПОРУШЕННЯ СТАТЕВОЇ ІДЕНТИЧНОСТІ ПІДЛІТКІВ Батьківський, громадянський рух в Україні закликає МОН зупинити тотальну сексуалізацію дітей і підлітків Відкрите звернення Міністру освіти й науки України - Гриневич Лілії Михайлівні Представництво українського жіноцтва в ООН: низький рівень культури спілкування в соціальних мережах Гендерна антидискримінаційна експертиза може зробити нас моральними рабами ЛІВИЙ МАРКСИЗМ У НОВИХ ПІДРУЧНИКАХ ДЛЯ ШКОЛЯРІВ ВІДКРИТА ЗАЯВА на підтримку позиції Ганни Турчинової та права кожної людини на свободу думки, світогляду та вираження поглядів
Контакти
Тлумачний словник Авто Автоматизація Архітектура Астрономія Аудит Біологія Будівництво Бухгалтерія Винахідництво Виробництво Військова справа Генетика Географія Геологія Господарство Держава Дім Екологія Економетрика Економіка Електроніка Журналістика та ЗМІ Зв'язок Іноземні мови Інформатика Історія Комп'ютери Креслення Кулінарія Культура Лексикологія Література Логіка Маркетинг Математика Машинобудування Медицина Менеджмент Метали і Зварювання Механіка Мистецтво Музика Населення Освіта Охорона безпеки життя Охорона Праці Педагогіка Політика Право Програмування Промисловість Психологія Радіо Регилия Соціологія Спорт Стандартизація Технології Торгівля Туризм Фізика Фізіологія Філософія Фінанси Хімія Юриспунденкция |
|
|||||||
Події і їх реалізація в JFCЛекція 19. Модель подій у Java Мета .Розглянути поширені методи створення та використання інтерфейсів. Навчити синтаксису створення інтерфейсів План
Поняття "подія" використовується в багатьох сучасних системах розробки програмного забезпечення. Реалізація подієвої моделі різна в різних системах, але принципи багато в чому схожі. Подія (event) - це те, що може статися. Наприклад, натиснення клавіші, пересування курсора миші і навіть зміни властивості якогось об'єкту. У програмі увесь час щось відбувається і це теж події з абстрактної точки зору. Але подія як програмний термін використовується тоді, коли ми говоримо про події, які можуть статися в довільний момент часу і ми можемо реалізувати реакцію на цю подію у вигляді деякого програмного коду, який має бути виконаний, коли ця подія сталася. Для більшості подій характерна "об’єктність" . Так, якщо ми ловимо подію натиснення на клавішу, то для нас важливо не лише само ця подія, але і деякий об'єкт, наприклад, поле введення, в якому знаходився курсор у момент натиснення клавіші. Більше того, для різних полів хотілося б мати можливість написати різні фрагменти коду по перехопленню цієї події. Також для події характерна наявність яких-небудь параметрів цієї події. Наприклад, нас не просто цікавить сам факт натиснення на клавішу, а ще і те, яка саме клавіша була натиснута. У іншому випадку нас може цікавити інша інформація, наприклад, при кліці мишкою - позиція курсора миші. У об'єктно-орієнтованих мовах для об'єднання параметрів події зазвичай застосовують деякий об'єкт, що асоціюється з цією подією, який зберігає необхідну інформацію по цій події. Зазвичай такий об'єкт називають об'єктом-подією (Event Object) або просто подією (Event). І останнє, що треба сказати про термін подія, як про абстрактне поняття, це те, що події бувають низькорівневими і високорівневими. Це в деякій мірі умовне ділення, але про нього треба знати. Наведемо приклад. Натиснення на клавішу Tab можна ловити як подія натиснення на клавішу. Але, з іншого боку, натиснення на Tab призводить до переходу фокусу на іншу візуальну компоненту і це теж можна ловити як подія (але вже абсолютно інше). З цього прикладу видно, що одна дія може призводити до породження цілого ряду подій. Відповідно у нас є вибір, які з цих подій ми збираємося обробляти. При написанні системних бібліотек ми напевно захочемо обробляти низькорівневі події, типу натиснення на клавішу, і самі породжуватимемо інші події, більш високорівневі. При написанні прикладних програм, навпаки, краще мати справу з абстрактнішими подіями, наприклад - натиснення на кнопку. Розберемо останній приклад детальніше. Формально, кнопка - це область екрану, на якій намальовано щось, що схоже на кнопку. Натиснення на кнопку - це клік мишкою в мить, коли її курсор знаходиться над цією областю, або натиснення клавіші Enter або "пропуск", коли фокус знаходиться на цій кнопці, а в деяких випадках, навіть натиснення деякої "гарячої клавіші", що асоціюється з цією кнопкою. Система програмування цієї мови ловить усі ці низькорівневі події і генерує для нас більш високорівневу подію - натиснення на кнопку. Якщо вона (система програмування) це робить, то ми в програмі можемо реалізувати обробку натиснення на кнопку і не замислюватися над цими усіма деталями. Читайте також:
|
||||||||
|