2014-06-18 66 views
0

刚开始在课堂上学习D2D,并在笔记本电脑上完成了所有设置。现在我试图在家里的桌面上设置它,并且遇到了创建Render目标的问题。CreateHwndRenderTarget参数列表问题

hr = pD2DFactory->CreateHwndRenderTarget(D2D1::RenderTargetProperties(), D2D1::HwndRenderTargetProperties(hWnd, size), &pRT); 

其中

ID2D1Factory* pD2DFactory; 
ID2D1RenderTarget* pRT; 

它说,CreateHwndRenderTarget的第一个参数应该是const的,但是当我看MSDN页面上,他们simly只是调用函数RenderTargetProperties,并为他们工作得很好。

Error: 1 IntelliSense: no instance of overloaded function "ID2D1Factory::CreateHwndRenderTarget" matches the argument list 
     argument types are: (D2D1_RENDER_TARGET_PROPERTIES, D2D1_HWND_RENDER_TARGET_PROPERTIES, ID2D1RenderTarget **) 
     object type is: ID2D1Factory  

回答

0

自己解决了。 本来应该

ID2D1HwndRenderTarget* pRT; 

,而不是

ID2D1RenderTarget* pRT;