我需要一个用于c ++ builder的WindowHandleToPlatform示例 我想使用句柄对表单执行bitblt和其他功能 我可以使用VCL做到这一点,效果很好。 Think WindowHandleToPlatform是firemonkey的解决方案,但文档很差
谢谢
答案 0 :(得分: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。如果你想要跨平台的东西,你将不得不找到另一种解决方案。