欢迎来到天天文库
浏览记录
ID:10656152
大小:61.50 KB
页数:7页
时间:2018-07-07
《vc++mfc 绘图+菜单+图片美化菜单》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、VC++MFC绘图+菜单+图片美化菜单该实例是我刚开始学习API的时候、记录下来的笔记,虽然不是很详细,但是我也是写出来配合MSDN来使用的,希望和我一样的初学者都在MSDN理把每一个数据类型、每一个API函数搞懂,这样你才是真的懂,而不是抄、哪里错的,自己在修改了,!还有就是希望大家把自己学习过程中所接触到的API和数据结构等做笔记记下来,这样大家可以交流共享。。帮助别人就是帮助自己!为了让大家更加容易浏览以下的实例,蓝色部分的文字是注释,以及写代码的方位。黑色的则是代码、、、By:瑜少变量类型:COLRREF.//颜色类型,适用于保存颜色(实例1)CPen/
2、/画笔类型,系统封装的画笔(实例1)CRect//类似于Rect结构(实例1)Rect//用来操作坐标的结构体CClientDC//用于GDI图像操作在窗口的客户区操作(实例1)CMenu//用于创建菜单对象,右键弹出贴图菜单等等。。。(实例2)CBitmap//封装了图形设备接口GDI位图,用于操作位图等等。。。。。。(实例3)CToolBar//带有一行位图按钮和可选分隔线的控件条。这些按钮可以像普通按钮、核选按钮或单选按钮那样动作(实例4)CStatusBar//带有一行文本输出窗格的控件,或者称为“指示器”。这些输出窗格常被用作消息行和状态指示器。例如:
3、简单解释所选菜单命令的菜单帮助消息行(实例4) API函数:RGB//颜色设置,其中包括几种颜色值(红,绿,蓝)(实例1)CreatePen//画笔初始化函数,适用于画笔初始化(实例1)GetClientRect//获取窗口的客户区坐标(实例1)FillRect//填充矩形使用的画笔左侧和顶部边界(实例1)GetStockObject//画刷的字体及颜色(实例1)SelectObject//得到指定的对象的功能(实例1)MoveTo//获取指定的坐标点(实例1)LineTo//绘制一个指定坐标点除外的图像(实例1)Rectangle//绘制一个矩形的图像(实例1
4、)Ellipse//绘制一个椭圆的图像(实例1)-----------------------------------------------------------------------------------------------------------------LoadMenu//用于加载可执行EXE菜单资源文件等等。。(实例2)AfxThrowResourceException//抛出一个资源异常,创建菜单的时候需要用到。。。(实例2)GetSubMenu//取得菜单的句柄,下拉式菜单等。。。(实例2)ASSERT//断言,用于捕捉错误和假设(实例
5、2)ClientToScreen//把客户区坐标转换成灾屏幕的坐标(实例2)TrackPopupMenu//在指定的位置显示菜单(菜单可自定义的哦)(实例2)LoadBitmap//从位图资源中加载一个文件。。(实例3)ModifyMenu//改变现有菜单项,外观等、行为等、。。(实例3)Create//动态创建数据窗口对象,用于创建窗口(实例4)LoadToolBar//用于加载工具栏资源名称,或者加载工具栏的ID(实例4)EnableDocking//设定工具栏可以停靠在父窗口中的位置。。自定义(实例4)DockControlBar//设定控制栏停靠在窗口的
6、框架上(实例4)SetBarStyle//设置控制栏的风格(实例4)GetBarStyle//确定目前窗口的风格及设置(实例4)SetCheck//设置或重置一个单选框按钮或复选框检查状态(实例5) 实例1、(实现化图像的功能)在MainFrame头文件中,加入以下代码,记得要在public下哦。intm_xiankuan;//设置个线宽的变量COLORREFm_dangqianyanse;//设置个当前颜色的变量在MFC中,CMainFrame.CPP文件中的CMainFrame初始化函数中CMainFrame::CMainFrame()添加以下代码:m_da
7、ngqianyanse=RGB(0,0,0);//初始化当前颜色m_xiankuan=1;//初始化线宽在菜单项目按钮消息的函数下添加以下代码:CPenhuabi;//设定个画笔变量CPen*huabizhizhen;//设定个画笔指针huabi.CreatePen(PS_SOLID,m_xiankuan,m_dangqianyanse);//初始化画笔;CClientDCdc(this);//设定一个GDI在窗口客户区操作的对象CRectrect;//设定坐标变量GetClientRect(&rect);//获取窗口的客户区坐标dc.FillRect(&rec
8、t,CBrush::Fr
此文档下载收益归作者所有