中南大学数学院大三年级面向对象实验报告43421

中南大学数学院大三年级面向对象实验报告43421

ID:17383485

大小:67.50 KB

页数:22页

时间:2018-08-30

中南大学数学院大三年级面向对象实验报告43421_第1页
中南大学数学院大三年级面向对象实验报告43421_第2页
中南大学数学院大三年级面向对象实验报告43421_第3页
中南大学数学院大三年级面向对象实验报告43421_第4页
中南大学数学院大三年级面向对象实验报告43421_第5页
资源描述:

《中南大学数学院大三年级面向对象实验报告43421》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、C++面向对象程序设计实验报告姓名:班级:学号:实验一,画线在visualC++6.0里面文件->新建->工程里面的MFCAppwizard[EXE]除了第二步选单文档,基本上都是默认的。建一个文件进行一下操作intm;CPointp1,p2;在构造函数里面初使化mCZuoBiaoView::CZuoBiaoView(){//TODO:addconstructioncodeherem=0;}在资源文件Menu中的IDR_MAINFRAME中添加消息句柄OnLButtonDown,OnLButtonUp,OnMouseM

2、ove.再回到ZuoBiaoView.cpp中编译一下程序voidCZuoBiaoView::OnLButtonDown(UINTnFlags,CPointpoint){//TODO:Addyourmessagehandlercodehereand/orcalldefaultCClientDCdc(this);m=1;p1=point;CView::OnLButtonDown(nFlags,point);}voidCZuoBiaoView::OnLButtonUp(UINTnFlags,CPointpoint){//T

3、ODO:Addyourmessagehandlercodehereand/orcalldefaultp2=point;CClientDCdc(this);OnPrepareDC(&dc);dc.MoveTo(p1);dc.LineTo(p2);m=0;CView::OnLButtonUp(nFlags,point);}voidCZuoBiaoView::OnMouseMove(UINTnFlags,CPointpoint){//TODO:Addyourmessagehandlercodehereand/orcallde

4、faultstaticintn=0;switch(++n){case1:p2=point;break;case2:p1=p2;p2=point;n=0;break;}CClientDCdc(this);OnPrepareDC(&dc);if(m==1){dc.MoveTo(p1);dc.LineTo(p2);}CView::OnMouseMove(nFlags,point);}实验二,创建菜单用MFC创建菜单按钮具体的制作过程:首先,生成一个MFCAppWizardEXE工程生成一个以CButton为基类的新类,名为C

5、MenuButton,然后用ClassWizard为其添加两个成员函数:DrawItem()和PreSubclassWidnow();手工为CMenuButton类添加BOOL类型m_bDrawFocusRect成员变量,用于决定是否在按钮上画焦点矩形,添加SetDrawFocusRect()函数用于设置这个标志,默认为画焦点矩形;添加两个枚举类型的变量m_ArrowType和m_PopupPos,用于决定所画的箭头的类型和菜单弹出的位置。箭头可为右箭头、下箭头、小右箭头、小下箭头、上箭头和左箭头;菜单的弹出位置可以为

6、按钮的左上角、右上角、左下角和右下角。最后手工添加两个函数,SetArrowType()和SetMenuPopupPos(),用于设置以上各种风格,其默值分别为画右箭头和在左下角弹出。如果只需要菜单而不需要画箭头,只需置空BS_OWNERDRAW标志位即可,添加一个SetStyle()函数,用于设置是画箭头还是显示文本,其默认值是画箭头。为方便处理按钮的BN_CLICKED通知消息,为CMenuButton类创建一个公有的成员函数OnClick(),以便在BN_CLICKED的消息处理器中调用。它有两个参数,第一个是菜

7、单资源的ID,第二个参数为子菜单的ID,默认为0。如果只有一组子菜单,则可使用其默认值0。OnClick()函数的返回值为所选的菜单项的命令ID,若未作任何有效选择,则返回0。下面是程序代码。头文件:#if!defined(_EWAY_MEMUBUTTON_H__INCLUDED_)#define_EWAY_MEMUBUTTON_H__INCLUDED_#if_MSC_VER>=1000#pragmaonce#endif//_MSC_VER>=1000//MenuButton.h:headerfile//classCM

8、enuButton:publicCButton{public:CMenuButton();virtual~CMenuButton();DECLARE_DYNAMIC(CMenuButton)enumArrowType{arrowRight,//向右的箭头;arrowDown,//向下的箭头;arrowSmallRight,//向右

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。