我试图在使用2010的活动video.The IDE上覆盖一个图像。代码是用C++.When开发的--我试图在实时视频上覆盖图像,我正在使用一个句柄来加载图像。
HANDLE hBitmap;
hBitmap = LoadImage(NULL, L"C:\\Users\\User\\Documents\\Visual Studio 2010\\Projects\\BMP_Image.bmp",IMAGE_BITMAP, 0,0, LR_LOADFROMFILE );我正在使用阿尔法混合机制,以覆盖图像上的视频。我遇到的问题是,图像是连续五次叠加到视频上。
我正在传递图片控件的ID,该ID放在rc文件中的对话框上,以加载并显示实时视频。我在代码中没有使用任何MFCs。视频是使用Direct2D机制呈现的
视频分辨率为640*480,位图图像分辨率为128*128。如果我拿着这张位图,视频会产生五次叠加到视频上的图像。
我使用GetWindowRect()和ScreentoClient()获得对话框的坐标。但我要图片控件的坐标。
我有以下疑问:
如何获得图像控件的坐标?
如何将图像放置在图片控件中的特定位置?
期待你的积极回应.
致以敬意,
维韦克
发布于 2012-12-01 13:29:21
您可以使用以下函数提取图片控件的句柄:
::GetDlgItem( hWnd of your dialog, Id of your picture control)通过收回它的手柄,你可以得到其他信息,比如它的位置、大小和
::GetWindowRect(hWnd, &rc)如果您通过一些API调用(如StretchBlt )覆盖映像,则可以将其放置在任何您想要的位置。
https://stackoverflow.com/questions/13659247
复制相似问题