www.pudn.com > SDKSkin.rar > SkinEdit.h


#ifndef _SKINEDIT_ONCE_ 
#define _SKINEDIT_ONCE_ 
 
class SkinEdit 
{ 
public: 
	SkinEdit() 
	{ 
	} 
	LRESULT CALLBACK SkinEditProc(SKINMSG &skMsg) 
	{ 
		switch(skMsg._msg) 
		{ 
			case WM_ERASEBKGND: 
				return TRUE;  
			/*case WM_PAINT: 
				{ 
					PAINTSTRUCT ps; 
					HDC hDc = BeginPaint(skMsg._hWnd,&ps); 
					PaintItem(hDc,skMsg); 
					EndPaint(skMsg._hWnd,&ps); 
				} 
				//return TRUE; 
				return TRUE;*/ 
			case WM_NCMOUSEMOVE: 
			case WM_NCPAINT: 
				PaintItem(skMsg); 
				return TRUE; 
			case WM_LBUTTONDOWN: 
				{ 
					int i = 0; 
				} 
				break; 
		} 
		 
		return SkinResList::CallDefWndProc(skMsg); 
	} 
	 
	//::GetSysColor(COLOR_GRAYTEXT) 
	LRESULT PaintItem(SKINMSG &skMsg) 
	{ 
		RNHDC hDc(GetWindowDC(skMsg._hWnd)); 
		RECT rcDraw; 
		GetWindowRect(skMsg._hWnd,&rcDraw); 
		SkinRect::ScreenToClient(skMsg._hWnd,rcDraw); 
		 
		HPEN  hPen = CreatePen(PS_INSIDEFRAME|PS_SOLID,1,::GetSysColor(COLOR_3DSHADOW)); 
		HPEN hOldPen = (HPEN)SelectObject(hDc,hPen); 
		 
		Rectangle(hDc,rcDraw.left+2,rcDraw.top+2,rcDraw.right+2,rcDraw.bottom+2); 
 
		SelectObject(hDc,hOldPen); 
		DeleteObject(hPen); 
		 
		return 0; 
	} 
}; 
 
#endif