Карта сайта Kansoftware
НОВОСТИУСЛУГИРЕШЕНИЯКОНТАКТЫ
KANSoftWare

Два и более обработчика события

Delphi , Компоненты и Классы , Свойства и События

Два и более обработчика события

На недавней компьютерной выставке (COMDEX) Билл Гейтс сравнил компьютерную промышленность с автомобильной и, в частности, сказал:
- Если бы Дженерал Моторс осваивала достижения технологии с таким же эффектом, как это происходит в компьютерной промышленности, то мы все уже бы ездили на 25-ти долларовых машинах с расходом бензина 10 литров на 1000 километров.
На что Дженерал Моторс отреагировала:
- Да, но хотели бы вы чинить ваш автомобиль дважды в день?


procedure TForm1.FormKeyDownFIRST(Sender: TObject;
 var Key: Word; Shift: TShiftState);

procedure TForm1.FormKeyDownFirstSECOND(Sender: TObject;
 var Key: Word; Shift: TShiftState);

// А потом, где нужно, подставляешь соответствующий адрес
@Form1.FormKeyDown=@Form1.FormKeyDownFIRST 

Пример с юмором! Код, предоставленный в этом примере - это программный код на языке Delphi Pascal, который демонстрирует два обработчика событий для события OnKeyDown формы (TForm1). Событие происходит при нажатии клавиши на форме.

Комментарий о сравнении Билла Гейтса с General Motors (GM) подчеркивает быстрый темп инноваций в компьютерной отрасли, где технологические достижения быстро принимаются. Ответ GM на это замечание - шутливая вопрос о том, хотели ли люди ремонтировать свои автомобили дважды в день, подразумевая, что частые исправления могут не быть желательными.

Теперь давайте проанализируем код: Код FormKeyDownFIRST и FormKeyDownSecond - это два отдельных обработчика событий для одного и того же события (OnKeyDown). Первый процедура (FormKeyDownFirst) присваивается обработчику события с помощью оператора @, который используется для присвоения нового адреса существующей переменной. В этом случае адрес процедуры FormKeyDownFirst присваивается адресу @Form1.FormKeyDown.

Это означает, что при наступлении события OnKeyDown формы код будет выполняться в процедуре FormKeyDownFirst первым. Вторая процедура (FormKeyDownSecond) не используется в этом примере, но может быть вызвана позднее, если это необходимо.

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

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


Комментарии и вопросы

Получайте свежие новости и обновления по Object Pascal, Delphi и Lazarus прямо в свой смартфон. Подпишитесь на наш Telegram-канал delphi_kansoftware и будьте в курсе последних тенденций в разработке под Linux, Windows, Android и iOS




Материалы статей собраны из открытых источников, владелец сайта не претендует на авторство. Там где авторство установить не удалось, материал подаётся без имени автора. В случае если Вы считаете, что Ваши права нарушены, пожалуйста, свяжитесь с владельцем сайта.


:: Главная :: Свойства и События ::


реклама


©KANSoftWare (разработка программного обеспечения, создание программ, создание интерактивных сайтов), 2007
Top.Mail.Ru

Время компиляции файла: 2024-08-19 13:29:56
2024-11-21 13:23:38/0.0055780410766602/1