Как уже не раз упоминалось, программирование в Windows —. это написание процедур
и функций по обработке событий. Чаще других используются следующие
события:
• OnActivate — генерируется при активации объекта (например, при первом вызове
формы). В обработке этого события можно производить различные инициализации
(а также в обработке события OnCreate);
• OnClick — генерируется, когда к объекту подводят указатель мыши и нажимают
ее левую кнопку;
• OnClose — происходит при закрытии формы. Здесь можно размещать код, сохраняющий
данные перед закрытием формы;
• OnCreate — генерируется при создании объекта;
• OnDblClick — его порождает двойной щелчок мышью на объекте;
• OnDeactivate — происходит при деактивации объекта;
• On Destroy — создается при уничтожении объекта;
• OnDockDrop — генерируется, когда один объект перетаскивают на другой и отпускают
кнопку мыши. Оно может быть вызвано, только если DockSite=True;
• OnDockOver — происходит, когда на объект попадает другой объект, переносимый
мышью. Это событие генерируется для объекта-приемника и может быть
вызвано, только если DockSite=True;
• OnDragDrop — используется для определения момента, когда пользователь переместил объект;
• OnDragOver — используется для перетаскивания и отпускания;
• OnEndDock — генерируется, когда перетаскивание завершено и кнопка мыши
отпущена;
• OnHide — происходит, когда объект становится невидимым;
• OnKeyDown — происходит при нажатии клавиши на клавиатуре. Отличается от
On Key Press тем, что происходит, когда пользователь нажал клавишу (отпускать
ее необязательно — событие OnKeyDown уже произошло). Процедуре обработки
события сообщается числовой код клавиши (типа Word) и информация о нажатых
клавишах Ctrl, Alt, Shift и кнопках мыши (тип TShif tstate);
• OnKeyPress — генерируется при нажатии клавиши. Но, в отличие от OnKeyDown,
происходит только тогда, когда пользователь нажал и отпустил клавишу. Пока
он ее не отпустил, событие On Key Press не происходит. Сообщается код нажатой
клавиши (типа char), а точнее — символ, который ей соответствует;
• OnKeyUp — похоже на OnKeyDown, но генерируется при отпускании нажатой клавиши.
Процедуре обработки события сообщаются код клавиши (типа Word) и информация
о нажатых клавишах Ctrl, Alt, Shift и кнопках мыши (тип TShif tstate);
• OnMouseDown — происходит при нажатии кнопки мыши (причем неважно, какой).
Процедуре обработки события сообщается информация о нажатых кнопках
мыши, о клавишах Ctrl, Alt, Shift и координатах указателя мыши. Событие
происходит независимо от того, отпустил пользователь кнопку мыши или нет;
• OnMouseMove — происходит при перемещении указателя мыши над объектом.
Сообщаются информация о клавишах Ctrl, Alt, Shift и координаты указателя
мыши;
• OnMouseUp — аналогично OnMouseDown, но генерируется не тогда, когда пользователь
нажал кнопку мыши, а в момент ее отпускания;
• OnMouseWheel — генерируется при прокрутке колеса мыши. Как правило, происходят
сразу два события: OnMouseWheel (во всех случаях) вместе с OnMouseWheelDown
или с OnMouseWheelUp;
• OnMouseWheelDown — генерируется, если пользователь прокручивает колесо
мыши к себе;
• OnMouseWheelUp — генерируется, если пользователь прокручивает колесо мыши
от себя;
• On Paint — происходит при перерисовке объекта;
• OnResize — происходит при изменении размеров объекта. Неважно, делает это
пользователь, допустим, мышью или программист с помощью соседней процедуры,
все равно генерируется событие OnResize. В его обработке (если оно
относится к форме Form) удобно пересчитывать координаты и размеры компонентов;
• OnShow — происходит при отображении объекта на экране.