Я работаю над чем-то, что потребует мониторинга многих форм.Из-за пределов формы и без помещения какого-либо кода в форму мне нужно каким-то образом захватывать события из этих форм, скорее всего, в форме сообщений Windows.Но как бы вы перехватывали сообщения Windows вне класса, с которым он связан?
В моем проекте есть объект, который оборачивает каждую форму, которую он отслеживает, и я предполагаю, что эта обработка будет идти в этом объекте.По сути, когда я создаю форму, которую хочу отслеживать, я создаю соответствующий объект, который, в свою очередь, добавляется в список всех созданных форм.Самое главное, когда эта форма закрыта, я должен знать, чтобы я мог удалить объект-оболочку этой формы из списка.
Эти события включают в себя:
- Свернуть
- Развернуть
- Восстановить
- Закрыть
- Фокусировать / выводить
Чего я НЕ хочу:
- Любой код внутри любых форм или блоков форм для этой обработки
- Наследование форм из любой настраиваемой базовой формы
- Использование событий формы, таких как
OnClose
, поскольку они будут использоваться для других целей
Чего я хочу:
- Обработка сообщений Windows для этих событий
- Любые советы о том, как получать сообщения Windows извне класса
- Какие сообщения Windows мне нужно прослушивать
Вопрос переписан с той же информацией, но с другим подходом