图形处理://在WM_PAINT之下
HDChDC;//定义绘图用的设备环境
PAINTSTRUCTPs;//定义绘图结构Ps
hDC=BeginPaint(hWnd,&Ps);//获取绘图环境hDC
GamePain(hDC);//调用GamePaint函数进行绘图
{
HDCdc=CreateComipatibleDC(hDC);//创建兼容设备环境
HBITMAPhbm=(HBITMAP)LoadImage(...);//选择位图资源
SelectObject(dc,hbm);//将位图选入设备环境
BitBlt(...);//绘制图像
DeleteObject(SelectObject(dc,hbm));//清理位图对象
DeleteObject(hbm);//
DeleteDC(dc);//清理兼容设备环境
}
EndPaint(hWnd,&Ps);//结束绘图
图形处理://在其他代码处
hDC=GetDC(hWindow);
绘制内容
ReleaseDC(hWindow,hDC);
绘制游戏屏幕上的文本
HFONThFont=CreateFont
(
20,0,//高度,宽取表示由系统选择最佳值
0,0,//文本倾斜,与字体倾斜都为
FW_HEAVY,//粗体
0,0,0,//非斜体,无下划线,无中划线
GB2312_CHARSET,//字符集
OUT_DEFAULT_PRECIS,
CLIP_DEFAULT_PRECIS,
DEFAULT_QUALITY,//一系列的默认值
DEFAULT_PITCH|FF_DONTCARE,
"自定义字体"//字体名称
);
SetTextColor(hDC,RGB(0,255,0));
SelectObject(hDC,hFont);
GetClientRect(g_pGame->GetWindow(),&rect);
TextOut(hDC,200,200,"这是一个菜单",10);
设置背景透明模式
intSetBkMode
(
HDChdc,//handletoDC
intiBkMode//backgroundmode
);
TheSetBkModefunctionaffectsthelinestylesforlinesdrawnusingapencreatedbytheCreatePenfunction.SetBkModedoesnotaffectlinesdrawnusingapencreatedbytheExtCreatePenfunction.
发表评论