CDialogSK 繼承自 CDialog,提供完整皮膚化支援:
HBITMAP 句柄EnableEasyMove)CDialogSK.h、CDialogSK.cppCDialog 改為 CDialogSKOnInitDialog 尾部初始化:
BOOL CSkinDialogDemoDlg::OnInitDialog() {
CDialogSK::OnInitDialog();
EnableEasyMove(); // 允許任意處拖曳
SetBitmap(IDB_BACKGROUND); // 設定背景圖 (資源 ID)
SetStyle(LO_RESIZE); // 視窗大小自適應圖片
SetTransparentColor(RGB(0,255,0)); // 綠色為透明色
return TRUE;
}
SetBitmap(path) 載入圖片SetTransparentColor(RGB(0,255,0)) 設定透明色| 方法 | 說明 |
|---|---|
DWORD SetBitmap(HBITMAP hBitmap) | 從 HBITMAP 設定背景 |
DWORD SetBitmap(int nBitmap) | 從資源 ID 設定背景 |
DWORD SetBitmap(LPCTSTR lpszFileName) | 從 BMP 檔案設定背景 |
void SetStyle(LayOutStyle style) | LO_DEFAULT/LO_TILE/LO_CENTER/LO_STRETCH/LO_RESIZE |
void EnableEasyMove(BOOL bEnable=TRUE) | 啟用/停用任意處拖曳 |
BOOL SetTransparent(BYTE bAlpha) | 整體透明度 0(全透)-255(不透),Win2000+ |
BOOL SetTransparentColor(COLORREF clr, BOOL bTrans=TRUE) | 指定透明色鍵,Win2000+ |