|
|
Регистрация Восстановить пароль |
Повторная активизация e-mail |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
Опции темы | Поиск в этой теме |
16.09.2011, 04:23 | #1 |
Форумчанин
Регистрация: 18.10.2010
Сообщений: 419
|
модификация TApplication
... или правила плохого тона
Ну что ж, господа, всех поздравляю, всем спасибо! модификация TApplication прошла успешно! смысл модификации: по-умолчанию Application.OnMessage можно назначить только одну процедуру. а что делать если нужно чтоб на событие реагировало несколько разных процедур? моя модификация как раз и добавляет такую возможность - назначать OnMessage неограниченное кол-во процедур, грубо говоря. реализация: 1. в классе TApplication создаем свое поле: privat FOnMessages:array of TMessageEvent; это будет массив, в который будут записываться указатели на назначаемые процедуры 2. дополнить код вызова FOnMessage вызовом всех процедур из массива: Код:
public function AddOnMessage(proc:TMessageEvent):in teger; код функции весьма прост: Код:
чтобы потом, в случае необходимости, можно было ее из массива удалить. в итоге теперь у нас есть возможность назначать любое кол-во процедур. насколько это полезно/бесполезно - зависит от конкретных задач и для каждого индивидуально. соотношение результат/цена тоже на вкус и цвет. любителям "хорошего тона" покажется неприемлемым, а мне, деревенскому простолюдину, вполне нравится =) вобщем, надо оно вам или нет - решайте сами. если захотите повторить этот изврат - как обеспечить себе возможность редактировать исходники стандартных компонентов я рассказывал в хитроback'й Delphi |
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
модификация элементов словаря | the_deer_one | C# (си шарп) | 4 | 29.06.2011 13:18 |
Модификация рандома | RayGGG | Общие вопросы C/C++ | 2 | 17.02.2011 03:43 |
Модификация сканера | gamer123 | Общие вопросы C/C++ | 1 | 30.10.2010 22:45 |
Модификация фаила *.db | @#dro# | Gamedev - cоздание игр: Unity, OpenGL, DirectX | 5 | 30.01.2010 18:15 |
модификация программы | olla-la | Assembler - Ассемблер (FASM, MASM, WASM, NASM, GoASM, Gas, RosAsm, HLA) и не рекомендуем TASM | 1 | 10.05.2008 14:01 |