- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
Visual C++程序设计;授 课 内 容;3.1 设备环境类和图形对象;3.2 绘图工具类;CGdiObject类的常用成员函数;3.3 画笔与画刷 ;CDC::SelectObject函数原型;CPen类;CPen类;CBrush类;效果图:;【例3-1】 绘制蓝天、草地和大山;void CMyView::OnDraw(CDC* pDC)
{
CBrush *pOldBrush, brushSky, brushGrass, brushMoutain;
CRect rect;
GetClientRect(rect);
brushSky.CreateSolidBrush(RGB(127, 200, 255)); // 画天空
pOldBrush = pDC-SelectObject(brushSky);
pDC-Rectangle(rect);
brushGrass.CreateSolidBrush(RGB(0, 255, 0)); // 画草地
pDC-SelectObject(brushGrass);
rect.top = 300;
pDC-Rectangle(rect);
; brushMoutain.CreateSolidBrush(RGB(125, 50, 0));
pDC-SelectObject(brushMoutain);
CPoint m_pointMoutain[5];
m_pointMoutain[0] = CPoint(200, 300);
m_pointMoutain[1] = CPoint(300, 200);
m_pointMoutain[2] = CPoint(400, 250);
m_pointMoutain[3] = CPoint(500, 150);
m_pointMoutain[4] = CPoint(700, 300);
pDC-Polygon(m_pointMoutain, 5);
pDC-SelectObject(pOldBrush);
}
;使用CImage显示图片;(1)在项目中的stdafx.h文件的末尾添加下列包含语句。
#include atlimage.h ;CMyView::CMyView()
{
m_imgBody.Load(vc.jpg);
} ;BOOL StretchBlt(
HDC hDestDC,
int xDest,
int yDest,
int nDestWidth,
int nDestHeight,
int xSrc,
int ySrc,
int nSrcWidth,
int nSrcHeight,
DWORD dwROP = SRCCOPY
);
;【例3-2】 直接显示一张位图文件;class CMyView : public CView
{
protected: // 仅从序列化创建
CMyView();
DECLARE_DYNCREATE(CMyView)
// 属性
public:
CMyDoc* GetDocument() const;
// 定义CBitmap类对象以及位图的高度和宽度变量
CBitmap m_Bitmap;
int m_nHeight;
int m_nWidth;
…(以下省略其它定义语句)
;CMyView::CMyView()
{
HBITMAP hBitmap=(HBITMAP)LoadImage(NULL,vc.bmp,
IMAGE_BITMAP,0,0, LR_LOADFROMFILE);
m_Bitmap.Attach(hBitmap);
BITMAP BM;
m_Bitmap.GetBitmap(BM);
m_nWidth = BM.bmWidth;
m_nHeight = BM.bmHeight;
}
;void CMyView::OnDraw(CDC* pDC)
{
// 显示位图
CDC MemDC;
MemDC.CreateCompatibleDC(NULL);
MemDC.SelectObject(m_Bitmap);
pDC-BitBlt(0,0,m_nWidth,m_nHeight,MemDC,0,0,
SRCCOPY);
}
;3.5字体 CFont类的常用成员函数;3.4 字体;显示字体;3.6 绘图模式 ;思考题;3.7 库存图形对象 ;例3-4 鼠标切换椭圆的图形;class CMyView : public CView
{ int m_nColor;
CRect m_rectEllipse;
protected: // 仅从序列化创建
CMyVie
原创力文档


文档评论(0)