- 第五课
- 掌握CDC的文字处理程序的编写,如何产生自定义字体和自定义插入符,熟悉对CString类的使用。通过对卡拉OK程序的编写,讲解定时器的使用和DrawText函数的巧妙运用。讲解如何使用CDC的裁减功能。
- CClientDC dc(this);
- TEXTMETRIC tm; //文本信息结构体
- dc.GetTextMetrics(&tm); //得到文本信息
- // CreateSolidCaret(tm.tmAveCharWidth/8,tm.tmHeight); //创建插入符
- bitmap.LoadBitmap(IDB_BITMAP1); //创建位图插入符
- CreateCaret(&bitmap);
- ShowCaret(); //显示插入符,
- SetTimer(1,100,NULL); //设定定时器
- CString str; //字符串类
- str="维新科学技术培训中心";
- pDC->TextOut(50,50,str);
- CSize sz=pDC->GetTextExtent(str); //得到文本长度
- str.LoadString(IDS_WEIXIN); //加载字符串资源
- pDC->TextOut(0,200,str);
- pDC->BeginPath(); //创建路径
- pDC->Rectangle(50,50,50+sz.cx,50+sz.cy);
- pDC->EndPath();
- pDC->SelectClipPath(RGN_DIFF);//路径作为设备环境的一个剪切区域。通过使用特定的模式把新的区域与任何存在的剪切区域合并。
- CClientDC dc(this);
- CFont font; //创建字体对象
- font.CreatePointFont(300,"华文行楷",NULL); //创建指定字体类型和字体大小
- CFont *pOldFont=dc.SelectObject(&font); //保存前个字体
- dc.SetTextColor(dc.GetBkColor()); //设置文本颜色
- SetCaretPos(pt); //设定插入符的位置