共用方式為


IDirect3DSurface9::GetContainer 方法 (d3d9.h)

如果此表面是 Cube 紋理或 mipmap 的子層級,則提供 mipmap (mipmap) 物件的存取權。 如果介面是後端緩衝區子系,這個方法也可以提供父交換鏈結的存取權。

語法

HRESULT GetContainer(
  [in]  REFIID riid,
  [out] void   **ppContainer
);

參數

[in] riid

類型: REFIID

所要求容器的參考識別碼。

[out] ppContainer

類型: void**

如果查詢成功,要填入容器指標的指標位址。 請參閱<備註>。

傳回值

類型: HRESULT

如果方法成功,傳回值會D3D_OK。 如果方法失敗,則傳回值可以D3DERR_INVALIDCALL。

備註

如果使用 CreateRenderTargetCreateOffscreenPlainSurfaceCreateDepthStencilSurface建立介面,則介面會視為獨立。 在此情況下, GetContainer 會傳回用來建立表面的 Direct3D 裝置。

如果呼叫成功,容器的參考計數就會增加一個。

以下是取得 Mip 表面父紋理的範例。


    
// Assumes pSurface is a valid IDirect3DSurface9 pointer
void *pContainer = NULL;
IDirect3DTexture9 *pTexture = NULL;
HRESULT hr = pSurface->GetContainer(IID_IDirect3DTexture9, &pContainer);
if (SUCCEEDED(hr) && pContainer)
{
    pTexture = (IDirect3DTexture9 *)pContainer;
}

需求

   
目標平台 Windows
標頭 d3d9.h (包含 D3D9.h)
程式庫 D3D9.lib

另請參閱

IDirect3DSurface9