Как мне вызвать другие функции из цикла сообщений проекта VCL?

У меня есть проект, где мне нужно использовать API, который поставляется с DLL и .cpp, а также .h файлы.
В документации мне сказано использовать функцию класса PreTranslateMessage (MSG * pMsg) предоставленного API и поместить ее в цикл обработки сообщений пользовательского интерфейса.

Можно ли использовать C ++ Builder в качестве IDE для этого проекта, и если да, то как, поскольку в нем нет цикла сообщений, в котором я мог бы разместить эту функцию.

1

Решение

Приложение VCL в C ++ Builder делает иметь цикл сообщений (в конце концов, это обычное приложение для Windows). Он спрятан внутри TApplication::Run() метод, который вызывается внутри проекта WinMain() функция. Если вы хотите позвонить PreTranslateMessage() внутри этого цикла вы можете назначить обработчик TApplication::OnMessage событие, либо напрямую, либо через TApplicationEvents составная часть. OnMessage Событие запускается сразу после удаления сообщения из очереди сообщений до того, как VCL его обработает.

1

Другие решения

Проверьте это из, в нем есть некоторая документация о процессе интеграции сообщений о событиях Windows с VCL, хотя не знаю, относится ли это к вашему проекту, в случае, если ваш проект использует MFC Framework, вы лучше с Visual Studio.

В любом случае вы можете включить windows.h и иметь доступ к win32 API функции

1

По вопросам рекламы ammmcru@yandex.ru
Adblock
detector