Пример embarcadero WindowHandleToPlatform C++
Мне нужен пример WindowHandleToPlatform для C++ Builder. Я хочу использовать дескриптор для выполнения bitblt и других функций в форме, я могу сделать это с помощью VCL и прекрасно работает. Думаю, WindowHandleToPlatform - это решение для firemonkey, но документация очень плохая
Спасибо
1 ответ
Попробуй это:
#include <FMX.Platform.Win.hpp>
void __fastcall TMyForm::DoSomething()
{
TWinWindowHandle *ThisHandle = WindowHandleToPlatform(this->Handle);
if (ThisHandle != NULL)
{
HWND hWnd = ThisHandle->Wnd;
if (ThisWnd != NULL)
{
// use ThisWnd as needed...
}
}
}
Или использовать FormToHWND()
вместо этого (который использует WindowHandleToPlatform()
внутри):
#include <FMX.Platform.Win.hpp>
void __fastcall TMyForm::DoSomething()
{
HWND ThisWnd = FormToHWND(this);
if (ThisWnd != NULL)
{
// use ThisWnd as needed...
}
}
В любом случае, имейте в виду, что эти функции специфичны для Windows. Если вы хотите что-то кроссплатформенное, вам нужно будет найти другое решение.