共用方式為


DrawThemeBackground 函式 (uxtheme.h)

繪製指定的控件元件可視化樣式所定義的框線和填滿。

語法

HRESULT DrawThemeBackground(
  [in] HTHEME  hTheme,
  [in] HDC     hdc,
  [in] int     iPartId,
  [in] int     iStateId,
  [in] LPCRECT pRect,
  [in] LPCRECT pClipRect
);

參數

[in] hTheme

類型: HTHEME

視窗指定之主題數據的句柄。 使用 OpenThemeData 建立 HTHEME。

[in] hdc

類型: HDC

用於繪製主題定義背景影像的 HDC。

[in] iPartId

類型: int

int 類型的值,指定要繪製的部分。 請參閱 元件和狀態

[in] iStateId

類型: int

int 類型的值,指定要繪製之元件的狀態。 請參閱 元件和狀態

[in] pRect

類型: const RECT*

RECT 結構的指標,該結構包含矩形的邏輯座標,其中會繪製背景影像。

[in] pClipRect

類型: const RECT*

包含裁剪矩形之 RECT 結構的指標。 此參數可能設定為 NULL

傳回值

類型: HRESULT

如果此函式成功,則會傳回 S_OK。 否則,它會傳回 HRESULT 錯誤碼。

備註

繪圖作業會調整為符合大小,且不會超過 pRect 中指定的矩形。 您的應用程式不應該繪製 pClipRect 所指定的矩形外部。

範例

在呼叫 DrawThemeBackground 以繪製視窗的背景影像之前,您可以呼叫 IsThemeBackgroundPartiallyTransparent。 這個方法會決定是否應該呼叫 DrawThemeParentBackground ,以在部分透明或 Alpha 混合子控件後的背景中繪製,並在下列範例中示範。

if (_hTheme)
{
  if (IsThemeBackgroundPartiallyTransparent(_hTheme, BP_PUSHBUTTON, _iStateId))
  {
    DrawThemeParentBackground(_hwnd, hdcPaint, prcPaint);
  }

  DrawThemeBackground(_hTheme,
                    hdcPaint,
                    BP_PUSHBUTTON,
                    _iStateId,
                    &rcClient,
                    prcPaint);
}

規格需求

需求
最低支援的用戶端 Windows Vista [僅限傳統型應用程式]
最低支援的伺服器 Windows Server 2003 [僅限桌面應用程式]
目標平台 Windows
標頭 uxtheme.h
程式庫 UxTheme.lib
Dll UxTheme.dll

另請參閱

屬性識別項