55 Часть V. Разработка программ и написание скриптов

мер, компания Microsoft удалила функцию CreateObject из языка JavaScript по соображениям безопасности. Однако грамотным программистам не составит труда имитировать работу этой функции, разработав соответствующий объект ActiveX.

Событийно-управляемое программирование

Понятие события в программировании весьма близко событиям в жизни. Таким образом, можно легко понять принципы работы событийно-управляемых программ, поскольку в своей жизни мы ежедневно реагируем на происходящие события.

В жизни вы имеете дело с различными объектами, такими как телефон, ребенок или светофор. Это все объекты нашего мира. Каждый из этих объектов получает информацию из внешнего мира и реагирует соответствующим образом. Телефон звонит, когда кто-то набрал ваш номер. Ребенок кричит, когда он голоден. Загорается желтый сигнал светофора, когда приходит его время. Любое из перечисленных действий является событием. -

Вы, вероятно, реагируете на эти события таким же образом, как и большинство людей. Когда телефон звонит, вы снимаете трубку. Когда ребенок кричит, вы кормите его. Когда загорается желтый свет, вы начинаете двигаться быстрее. В определенном смысле вы являетесь обработчиком событий. Приведем некоторые другие события, с которыми возможно вы сталкивались, и вашу вероятную реакцию на них:

Объект Событие Ваша реакция

Автомобиль Кошка

Микроволновая печь Растение Телевизор

Останавливается

Мяукает

Выдает сигнал готовности

Сохнет

Показывает рекламу

Ударяете ногой по шине

Гладите кошку

Открываете печь и достаете еду

Поливаете водой

Идете к холодильнику

Что является событием?

Вернемся от реальной жизни к компьютерам. Откуда появляются события? От вас. Большинство событий является результатом ваших действий. Например, вы щелкаете мышью на кнопке, или нажимаете клавишу Tab при работе с диалоговым окном. Однако не только вы являетесь источником событий. Система Windows также генерирует события, такие как, например, событие от таймера, которое происходит каждый раз, когда показания таймера меняются. Web-браузер также генерирует события, например, происходит событие каждый раз, когда загружается Web-страница.