您好,欢迎访问三七文档
当前位置:首页 > 商业/管理/HR > 项目/工程管理 > 第3章 Vc++--MFC 应用软件开发知识讲座
第3章Vc++--MFC应用软件开发知识讲座第3章Vc++--MFC应用软件开发知识讲座MATLSB软件开发MATLSB软件开发MATLSB软件开发MATLSB软件开发MATLSB软件开发MATLSB软件开发MATLSB软件开发MATLSB软件开发MATLSB软件开发MATLSB软件开发华中农业大学理学院数学与信息科学系刘承平2005.5第一讲Vc++入门(1)File-New-Projects-MFCAppWizard(exe)在Projectname:框内输入工程名(既可执行文件的文件名,假设你所输入的是XXXXXXXX)在Location(位置):输入工程存入的目录默认选项:Createnewworkspace(创建新的工作群)单击OK进入MFCAppWizard-Step1在复选框内选择Singledocument(单文档)单击Finish(完成)进入NewProjectInformation(新工程信息)单击OK(2)单击Workspace(工作群)下方的Cl...(ClassView类视窗),双击XXXXXXXXclasses,察看向导自动生成了哪些类单击Workspace(工作群)下方的Re...(ResourceView资源视窗),双击XXXXXXXXresources,察看向导自动生成了哪些资源单击Workspace(工作群)下方的Fil...(FileView文件视窗),双击XXXXXXXXfiles,察看向导自动生成了哪些文件(3)打开我的电脑,察看工程目录,向导自动生成了哪些目录和文件,对比一下(4)回到Vc++,单击工具栏中的!,在弹出的对话框内选择Y,即出现向导为你所生成的视窗框架(5)再打开我的电脑,察看工程目录,向导自动生成了哪些目录和文件,对比一下(6)回到Vc++,打开Workspace-XXXXXXXXfiles,双击文件夹SourcesFiles(7)双击XXXXXXXXView.cpp(8)找到函数voidCXXXXXXXXView::OnDraw(CDC*pDC)(9)将光标定位于函数voidCXXXXXXXXView::OnDraw(CDC*pDC)内//TODO:adddrawcodefornativedatahere之后,回车(10)一个一个地击打字符(注意区分大小写):pDC-,弹出对话框,继续击打字符t(无论大小写),双击弹出对话框内的TextOut(11)一个一个地击打字符:(60,0,abcd);,注意观察提示信息22第3章Vc++--MFC应用软件开发知识讲座(12)单击工具栏中的!,在弹出的对话框内选择Y,观察结果变化MATLSB软件开发MATLSB软件开发MATLSB软件开发MATLSB软件开发MATLSB软件开发MATLSB软件开发MATLSB软件开发MATLSB软件开发MATLSB软件开发MATLSB软件开发(13)回车,类似(10)(11),输入下面三行字符pDC-SetBkColor(RGB(255,0,0));//设置背景色为红色pDC-SetTextColor(RGB(0,255,0));//设置字符颜色为绿色pDC-TextOut(0,60,abcdefg);//输出字符串abcdefg单击工具栏中的!,在弹出的对话框内选择Y,观察结果变化(14)回车,类似(10)(11),输入pDC-LineTo(100,100);,单击工具栏中的!,在弹出的对话框内选择Y,观察结果变化(15)回车,类似(10)(11),输入pDC-LineTo(20,100);,单击工具栏中的!,在弹出的对话框内选择Y,观察结果变化(16)回车,类似(10)(11),输入pDC-MoveTo(100,120);//定位划线始点(100,120)pDC-LineTo(120,200);//划线到终点(120,200)单击工具栏中的!,在弹出的对话框内选择Y,观察结果变化(17)回车,类似(10)(11),输入CRectrxy;//定义矩形pDC-GetClipBox(&rxy);//获得视窗大小CBrushNewBrush(RGB(128,128,128));//定义画刷为暗灰色CBrush*OldBrush=pDC-SelectObject(&NewBrush);//设置新画刷,保存旧画刷pDC-Rectangle(rxy);//画矩形pDC-SelectObject(OldBrush);//恢复旧画刷NewBrush.DeleteObject();//删除新画刷单击工具栏中的!,在弹出的对话框内选择Y,观察结果变化(18)回车,类似(10)(11),输入CStringstr;//定义字符串str.Format(窗口左上角(%d,%d),窗口右下角(%d,%d),rxy.left,rxy.top,rxy.right,rxy.bottom);//赋值字符串pDC-TextOut(20,4,str);//输出字符串str单击工具栏中的!,在弹出的对话框内选择Y,观察结果变化缩小、放大或最大化窗口,观察结果变化str+=,在弹出的对话框内选择;//在字符串str后添加字符串pDC-TextOut(20,24,str);//输出字符串str单击工具栏中的!,在弹出的对话框内选择Y,观察结果变化(19)回车,类似(10)(11),输入CPennewb;//定义画笔CPen*oldb;23第3章Vc++--MFC应用软件开发知识讲座newb.CreatePen(PS_SOLID,3,RGB(255,255,255));//创建实线、3像素宽、白色画笔oldb=pDC-SelectObject(&newb);//设置新画笔,保存旧画笔MATLSB软件开发MATLSB软件开发MATLSB软件开发MATLSB软件开发MATLSB软件开发MATLSB软件开发MATLSB软件开发MATLSB软件开发MATLSB软件开发MATLSB软件开发pDC-MoveTo(100,120);//定位划线始点(100,120)pDC-LineTo(120,200);//划线到终点(120,200)pDC-SelectObject(oldb);//恢复旧画笔newb.DeleteObject();//删除新画笔pDC-MoveTo(100,220);pDC-LineTo(120,300);单击工具栏中的!,在弹出的对话框内选择Y,观察结果变化(20)回车,类似(10)(11),输入newb.CreatePen(PS_SOLID,3,RGB(0,0,255));//创建实线、3像素宽、蓝色画笔oldb=pDC-SelectObject(&newb);//设置新画笔,保存旧画笔NewBrush.CreateSolidBrush(RGB(255,255,0));//创建黄色新画刷OldBrush=pDC-SelectObject(&NewBrush);//设置新画刷,保存旧画刷pDC-Rectangle(10,80,60,120);//画矩形pDC-RoundRect(10,160,80,280,20,20);//画圆角矩形pDC-Ellipse(80,80,180,120);//画椭圆CRectrxy1(100,30,200,60);pDC-FillRect(rxy1,&NewBrush);//填充矩形pDC-SelectObject(OldBrush);NewBrush.DeleteObject();pDC-SelectObject(oldb);newb.DeleteObject();单击工具栏中的!,在弹出的对话框内选择Y,观察结果变化pDC-Rectangle(210,80,260,120);pDC-Ellipse(280,80,380,120);rxy1.left+=200;rxy1.right+=300;pDC-FillRect(rxy1,&NewBrush);pDC-RoundRect(210,160,280,280,10,10);单击工具栏中的!,在弹出的对话框内选择Y,观察结果变化(21)回车,类似(10)(11),输入NewBrush.CreateSolidBrush(RGB(192,192,192));OldBrush=pDC-SelectObject(&NewBrush);pDC-Rectangle(rxy);pDC-SelectObject(OldBrush);NewBrush.DeleteObject();单击工具栏中的!,在弹出的对话框内选择Y,观察结果变化newb.CreatePen(PS_SOLID,10,RGB(0,0,255));oldb=pDC-SelectObject(&newb);24第3章Vc++--MFC应用软件开发知识讲座NewBrush.CreateHatchBrush(HS_FDIAGONAL,RGB(255,255,0));OldBrush=pDC-SelectObject(&NewBrush);MATLSB软件开发MATLSB软件开发MATLSB软件开发MATLSB软件开发MATLSB软件开发MATLSB软件开发MATLSB软件开发MATLSB软件开发MATLSB软件开发MATLSB软件开发pDC-Rectangle(10,80,60,120);pDC-RoundRect(10,160,80,280,20,20);pDC-Ellipse(80,80,180,120);rxy1.left-=200;rxy1.right-=300;pDC-FillRect(rxy1,&NewBrush);pDC-SelectObject(OldBrush);NewBrush.DeleteObject();pDC-SelectObject(oldb);newb.DeleteObject();pDC-Rectangle(210,80,260,120);pDC-Ellipse(280,80,380,120);rxy1.left+=200;rxy1.right+=300;pDC-FillRect(rxy1,&NewBrush);pDC-RoundRect(210,160,280,280,10,10);单击工具栏中的!,在弹出的对话框内选择Y,观察结果变化(22)回车,类似(10)(11),输入NewBrush.CreateSolidBrush(RGB(255,255,255));OldBrush=pDC-SelectObject(&NewBrush);pDC-Rectangle(rxy);pDC-SelectObject(OldBrush);NewBrush.DeleteObject();intr,g,b;for(r=0;r6;r++)for(g=0;g255;g++)for(b=0;b255;b++)pDC-SetPixel(r%3*255+g,r/3*255+b,RGB(r,g,b));//画点单击工具栏中的!,在弹出的对话框内选择Y,观察结果变化(23)将光标定位在HS_FDIAGONAL上,双击,HS_FDIAGONAL被选择,单击右键,在弹出的对话框内单击GoToDefinitionOfHS_FDIAGONAL,若再弹出对话框,选择Yes或者Ok,将打开有关HS_FDIAGONAL定义的头文件类似地,可以看到其他宏或函数定义第二讲加入头文件或源文件于工程之中方法1:Project-AddToProject-New在弹出的New对话框内选择Files-C/C++HeaderFile或C++SourceFile在File框内输入你所加入的文件名,其他默认25第3章Vc++--MFC应用软件开发知识讲座单击OkMATLSB软件开发MATLSB软件开发MATLSB软件开发MATLSB软件开发MATLSB软件开发MATLSB软件开发MATLSB软件开发MA
本文标题:第3章 Vc++--MFC 应用软件开发知识讲座
链接地址:https://www.777doc.com/doc-5900961 .html