UPDATELAYEREDWINDOWINFO 結構 (winuser.h)

UpdateLayeredWindowIndirect 用來提供分層視窗的位置、大小、圖形、內容和透明資訊。

語法

typedef struct tagUPDATELAYEREDWINDOWINFO {
  DWORD               cbSize;
  HDC                 hdcDst;
  const POINT         *pptDst;
  const SIZE          *psize;
  HDC                 hdcSrc;
  const POINT         *pptSrc;
  COLORREF            crKey;
  const BLENDFUNCTION *pblend;
  DWORD               dwFlags;
  const RECT          *prcDirty;
} UPDATELAYEREDWINDOWINFO, *PUPDATELAYEREDWINDOWINFO;

成員

cbSize

類型: DWORD

這個結構的大小,以位元組為單位。

hdcDst

類型: HDC

螢幕DC的句柄。 呼叫 UpdateLayeredWindowIndirect 時,會在這個成員中指定 NULL 來取得此句柄。 當視窗內容更新時,句柄會用於調色盤色彩比對。 如果 hdcDstNULL,則會使用預設調色盤。

如果 hdcSrcNULL,hdcDst 必須是 NULL

pptDst

類型: const POINT*

分層視窗的新螢幕位置。 如果新位置與目前位置保持不變, 則 pptDst 可以是 NULL

psize

類型: const SIZE*

分層視窗的新大小。 如果視窗的大小不會變更,這個參數可以是 NULL。 如果 hdcSrcNULL,psize 必須是 NULL

hdcSrc

類型: HDC

定義分層視窗之表面的DC句柄。 呼叫 CreateCompatibleDC 函式即可取得此句柄。 如果視窗的圖形和視覺內容不會變更, hdcSrc 可以是 NULL

pptSrc

類型: const POINT*

裝置內容中圖層的位置。 如果 hdcSrcNULL,pptSrc 應該是 NULL

crKey

類型: COLORREF

撰寫分層視窗時要使用的色彩索引鍵。 若要產生 COLORREF,請使用 RGB 宏。

pblend

類型: const BLENDFUNCTION*

撰寫分層視窗時要使用的透明度值。

dwFlags

類型: DWORD

此參數可以是下列其中一個值。

意義
ULW_ALPHA
0x00000002
使用 pblend 作為混合函式。 如果顯示模式為 256 個色彩或更少,則此值的效果與ULW_OPAQUE的效果相同。
ULW_COLORKEY
0x00000001
使用 crKey 作為透明度色彩。
ULW_OPAQUE
0x00000004
繪製不透明的分層視窗。
ULW_EX_NORESIZE
0x00000008
如果目前的視窗大小不符合 psize 中指定的大小,則強制 UpdateLayeredWindowIndirect 函式失敗。
 

如果 hdcSrcNULL,dwFlags 應為零。

prcDirty

類型: const RECT*

要更新的區域。 此參數可以是 Null。 如果是非 NULL,則只會從來源 DC 更新此矩形中的區域。

規格需求

需求
最低支援的用戶端 Windows Vista [僅限傳統型應用程式]
最低支援的伺服器 Windows Server 2008 [僅限傳統型應用程式]
標頭 winuser.h (包括 Windows.h)

另請參閱

概念

參考

UpdateLayeredWindow

視窗功能