ID2D1Factory::CreateHwndRenderTarget (constD2D1_RENDER_TARGET_PROPERTIES*,constD2D1_HWND_RENDER_TARGET_PROPERTIES*,ID2D1HwndRenderTarget**) 方法 (d2d1.h)

创建 ID2D1HwndRenderTarget,这是呈现到窗口的呈现目标。

创建呈现目标并且硬件加速可用时,可以在计算机的 GPU 上分配资源。 通过创建一次呈现器目标并尽可能长时间地保留它,可以获得性能优势。 应用程序应创建一次呈现目标,并在应用程序的生命周期内保留这些目标,直到收到 D2DERR_RECREATE_TARGET 错误。 收到此错误时,需要重新创建呈现目标 (以及它创建的任何资源) 。

语法

HRESULT CreateHwndRenderTarget(
  const D2D1_RENDER_TARGET_PROPERTIES      *renderTargetProperties,
  const D2D1_HWND_RENDER_TARGET_PROPERTIES *hwndRenderTargetProperties,
  ID2D1HwndRenderTarget                    **hwndRenderTarget
);

参数

renderTargetProperties

类型:[in] const D2D1_RENDER_TARGET_PROPERTIES*

呈现模式、像素格式、远程处理选项、DPI 信息和硬件呈现所需的最低 DirectX 支持。 有关支持的像素格式的信息,请参阅 支持的像素格式和 Alpha 模式

hwndRenderTargetProperties

类型:[in] const D2D1_HWND_RENDER_TARGET_PROPERTIES*

窗口句柄、初始大小 (以像素) 和呈现选项。

hwndRenderTarget

类型:[out] ID2D1HwndRenderTarget**

此方法返回时,包含指向此方法创建的 ID2D1HwndRenderTarget 对象的指针的地址。

返回值

类型: HRESULT

如果该方法成功,则返回 S_OK。 否则,它将返回 HRESULT 错误代码。

注解

创建呈现目标且硬件加速可用时,可在计算机的 GPU 上分配资源。 通过创建一次呈现器目标并尽可能长时间地保留它,可以获得性能优势。 应用程序应创建一次呈现目标,并在应用程序的生命周期内保留这些目标,直到收到 D2DERR_RECREATE_TARGET 错误。 收到此错误时,需要重新创建呈现目标 (以及它创建的任何资源) 。

示例

以下示例创建 ID2D1HwndRenderTarget

RECT rc;
GetClientRect(m_hwnd, &rc);

D2D1_SIZE_U size = D2D1::SizeU(
    rc.right - rc.left,
    rc.bottom - rc.top
    );

// Create a Direct2D render target.
hr = m_pD2DFactory->CreateHwndRenderTarget(
    D2D1::RenderTargetProperties(),
    D2D1::HwndRenderTargetProperties(m_hwnd, size),
    &m_pRenderTarget
    );

要求

要求
目标平台 Windows
标头 d2d1.h
Library D2d1.lib
DLL D2d1.dll

另请参阅

ID2D1Factory