C++ 带有WM_油漆信息的NPP_HandleEvent

C++ 带有WM_油漆信息的NPP_HandleEvent,c++,npapi,wm-paint,C++,Npapi,Wm Paint,报告说: 窗户 插件接收WM_PAINT消息。WM_PAINT的lParam参数包含一个指向RECT结构的指针,该结构指定更新区域的边界框。不过,有些插件会选择忽略此paint rect,并始终更新整个插件窗口。此外,由于插件和浏览器共享相同的HDC,因此插件必须在HDC上保存当前设置,设置自己的环境,绘制自身,并将HDC恢复为以前的设置。无论何时控件返回到浏览器,在从NPP_HandleEvent返回之前或在调用与图形相关的浏览器端方法之前,都必须恢复HDC设置 这必须是一个客户端RECT R

报告说:

窗户 插件接收WM_PAINT消息。WM_PAINT的lParam参数包含一个指向RECT结构的指针,该结构指定更新区域的边界框。不过,有些插件会选择忽略此paint rect,并始终更新整个插件窗口。此外,由于插件和浏览器共享相同的HDC,因此插件必须在HDC上保存当前设置,设置自己的环境,绘制自身,并将HDC恢复为以前的设置。无论何时控件返回到浏览器,在从NPP_HandleEvent返回之前或在调用与图形相关的浏览器端方法之前,都必须恢复HDC设置

这必须是一个客户端RECT

RECT r;
GetClientRect(PluginWnd->getHWND(), &r);
NPP_HandleEvent(WM_PAINT, 0, (uint32)&r);
还是窗口的矩形

RECT r;
GetWindowRect(PluginWnd->getHWND(), &r);
NPP_HandleEvent(WM_PAINT, 0, (uint32)&r);

这是关于再次嵌入Flash的吗?如果是这样的话,请在问题中提到它,因为它对你是实现插件还是插件主机有很大的影响。我实现了插件主机,但是,我认为,它不会改变什么,因为它涉及到NPAPI(插件和插件的主机)。不,对于一个插件来说,这根本不重要。对于主持人来说,这取决于你在做什么。