自己動手寫類似酷狗播放器(6)_UI初步改善_新增背景色

YunShell發表於2013-08-15
    如何在對話方塊背景中新增點陣圖作為背景,其實只要用畫刷去刷下背景色。
效果:
 這裡新增了一張點陣圖作為背景

步驟

1.載入一張點陣圖,建立一個畫刷

	
HBITMAP hbitmap=(HBITMAP)LoadImage(NULL,"kugoubizhi_touming.bmp",IMAGE_BITMAP,0,0,LR_LOADFROMFILE);
	hbrushbitmap=CreatePatternBrush(hbitmap);
2.然後在處理WM_CTLCOLORDLG訊息
這個訊息處理時,必須返回一個畫刷,就是建立的點陣圖畫刷,也就是用該背景去修改對話方塊的背景色。

case WM_CTLCOLORDLG:
			{
				return (BOOL)hbrushbitmap;
			}
3.靜態控制元件灰色問題
填充了一張點陣圖後,原來的靜態控制元件還有灰色背景,和背景不協調,解決方法就是,將靜態控制元件設定為透明色,並且返回一個空畫刷就OK了。對於滑動條的處理還沒搞定,繼續學習...
case WM_CTLCOLORSTATIC:
{
SetBkMode((HDC)wParam,TRANSPARENT); //設定靜態字型為透明
SetTextColor((HDC)wParam,RGB(255,255,255)); //這裡設定字型為白色
return (BOOL)(HBRUSH)GetStockObject(NULL_BRUSH);//必須要返回畫刷,這裡返回空畫刷,即使和背景相同顏色
}


相關文章