У меня есть небольшая проблема. Мне нужно создать компонент, который захватывает некоторые события определенного типа независимого от компонента совета их количества. Пример: Мне нужно каждый раз, когда он называется событием TIBDatabase активным компонентом (Palette Interbase), прежде чем мой компонент, который запускает код события, активирует автоматическую настройку некоторых свойств компонента. Это делается автоматически? Пример: В то время, когда я помещаю компонент в форму, он автоматически делает это подключение к событиям? спасибо.Прикрепите или зацепите событие всех компонентов
Примечание: Я не мог воспроизвести примеры (How can I dynamically inject code into event handlers in Delphi?)
Отредактировано:
Я пытаюсь использовать пример "Ritsaert Hornstra". В примере принятого ответа мне пришлось бы сканировать все компоненты.
Пример работает только при активации компонента события, который я хочу контролировать. Пример: компонент «TIBQuery» имеет событие «AfterOpen», когда я воспроизвожу пример ссылки не работает. Однако, если я помещу что-либо в этом событии в экземпляре экземпляра компонента. Он не делает автоматически. Я использую Delphi XE3.
Edited 2:
Привет Craig Young. Сегодня у меня есть несколько систем в активном производстве. Что я хочу сделать, это реализовать журнал безопасности, который не был выполнен в то время, когда были разработаны системы. Это будет 13-й труд Геркулеса, который сделает это вручную во всех из них. Что мне нужно сделать. Компонент, который, когда adiconado в модуле данных подключает/присоединяет некоторые события компонентов базы данных InterBase. Мне просто нужен рабочий пример для меня, чтобы сделать все остальное. Я просто хочу знать, кто сделал, когда это было сделано, и что было сделано. Переменные System: g_s_user, g_s_date, g_s_sql. Поскольку почти все компоненты подключены к TDataset, я намерен сделать это и внедрить этот компонент.
У меня нет готового кода, потому что я до сих пор не знаю, как это сделать!
спасибо.
Поскольку принятый ответ на указанную вами ссылку отлично работает, и ваш ответ выглядит как дубликат вопроса. Вы можете показать, что вы пробовали, а что - нет. – bummi
Что именно вы пробовали? Кроме того, посмотрите на реализацию «TApplicationEvents». –
Эти виды супер-родовых, автомагических, серебряных-пулевых ** псевдо-решений - вот что заставляет вас создавать серьезные проблемы, создавая ужасно сложные, очень жесткие и тем не менее системы. Я предлагаю вам скорее конкретно определить, чего вы пытаетесь достичь, и придумать конкретное решение конкретной проблемы. Например. Вы можете определить свой собственный компонент для использования вместо стандартных компонентов IB. Вы можете создавать свои компоненты во время работы с использованием фабрики; чтобы они были правильно настроены с самого начала. Наиболее подходящее решение зависит от ** особенностей ** вашей проблемы. –