版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、、设计方案概述为了学习C语言在win dos内的应用,我们在 MFC环境下设计 款满足依据用户的需求,进行简单的点,线,矩形的绘制的程序二、设计步骤1.编译过程新建一个MFC单文档程序在资源视图中添加一个含有三个菜单项的菜单,分别为点、线、矩 形。耳 心“ r o:兀莎冈3- -u : - ejm斗吟wii kB W) KBli MD Hj aSBi 二BO) 口仝 Mini4 tf bl 0p - 口 医寺*fSSJuioiu!旦114-剛Z隠旦|,心曲31.-J風程设计As吕i氏口 resources -iAcceleratoruiDialog:ulcon-j Menu宙 IDR_MAIK
2、FRAAE亠uStrinj? TableuiToolbaruiVrsin为菜单项添加命令响应(类向导)并编译111为了根据用户的选择绘制图形,插入一个UINT类型的私有变量SUN 将用户的选择保存在该变量中。为了确定画图的起始点,需要插入一个CPoint型私有变量MOOJN并在构造方法中将其初始化为 0ommand handler code hereCAssip;nViow:: CAssignViowO/ TODO: add construction code here SUN二 0;M00N=0:|CAssignView:CAssignView()根据用户不同的选择,给 SUN不同的值:点1
3、,线2,矩形3Y_ ic r V = i ETiYipx -GriTlol门1 *. - 4db ynur 匚 crania nd nand ler code here StN=l;)vcid CAs-iinVioA: :0nLi!itrtH TOGO: Add yotir mfrind heindler code herp SUX-2:)v:i2 CA2i.nVLei:TCK1: Add your comBaRd handler cede herev: id 匚rOr.l ESuLtcmtkijnftlTKT nFlas, CPdikit po r. 7ID 1: Adi vour TeMS
4、ige ?iandlr cod=上电rm 3.n or call Eefa.ilt 110COI=p.:itlt;dPiev: iOnLEjTtorLDfl.rnfnFlars 归nr);为了完成绘图功能,需要对用户鼠标左键的起落分别进行捕获,于是添加两个Win dos 消息处理器: WM_LButto nDow 与 WM_ LButto nup。叩dWindcwsand Event Hand ors For dass CAsignViffw新痙Window弭射事件愉WM CANCELMODE已存柱的鬧创事件旬辆lit WA LBUTTONDOWNWWCArTURECHAISGED WM_CH
5、AR Wld_CONJFXTMFMIJ WWlCOrYDATA WM_CREATE WWDFSTROY WW_DROPFILES wmZefvsebkgnd WM_HELPINFO WW_HSCROLL wwZkeyoownWM KEYUP WM_KILLFOCUS WW_L0UTTONDOLCLJK WM_MUUSLMUVt WM_MOUSFWHFFL wmZmove WW_PAINT WM-flRUTTONDBL Cl K wmZrbuttondown WW_RBUTTONUP WMlSETCURSOR WM_SETFOCUSM LDUTTONUPClass or object to ha
6、ndle:CAqianViewID_ArP_ABOUTID_APP_EXIT idZedit_copv idedi 匸CUTFilter ior EE&waget; available toChild Window工WM LHU1ICNUP OnLButlonUp(|: tridicatee when left mouse bunon is released鼠标左键按下时我们将点的位置保存在之前定义的MOO之中void CAssisnv itTf: :(h:LButtonDcwnglH nFlaz- CPcint poirn TOGO: Acd your nessaje handler coi
7、e here Eni-cr ceII defaultVfON=poi m:C i=A: : OnLEuttrdDvn :nF.sgs, poiat ;鼠标左键抬起时我们根据用户的选择进行画图 (用户的选择保存在SUN里),使用CClient语句画图,用一个Switch语句选择用户的需求,调用不同的函数(包括 dc.SetPixel、dc.MoveTo、dc.LineTo、dc.Rectangle )。xid CAEsignVi: :OaLButtonUp(UI?en (PSSOLIDr 2, RGB(0T 255.0):de. SelectObject ripen:;CBrush *pBrus
8、hIsKindOf(RUNTIME_CLASS(CAssignDoc); return (CAssignDoc*)m_pDocument;#endif /_DEBUG/ CAssignView message handlersvoid CAssignView:OnDot()/ TODO: Add your command handler code here SUN=1;void CAssignView:OnLine()/ TODO: Add your command handler code hereSUN=2;void CAssignView:OnRectangle()/ TODO: Add
9、 your command handler code hereSUN=3;void CAssignView:OnLButtonDown(UINT nFlags, CPoint point)/ TODO: Add your message handler code here and/or call defaultMOON=point;CView:OnLButtonDown(nFlags, point);void CAssignView:OnLButtonUp(UINT nFlags, CPoint point)/ TODO: Add your message handler code here and/or call defaultCView:OnLButtonUp(nFlags, point);CClientDC dc(this);CPen pen(PS_SOLID,2,RGB(0,255,0);dc.SelectObject(&pen);CBrush *pBrush=CBrush:FromHandle(HBRUSH)GetStockObject(NULL_BRUSH); dc.SelectObject(pBrush);switc
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2026年纳米药物临床试验中安慰剂仿制与区分要求
- 2026年地基与基础工程施工技术及质量缺陷处理
- 2026年城市商业综合体智慧消防系统设计
- 2026年客服人员情绪劳动与心理调适
- 2026年体育场馆座椅及悬挂物安全排查
- 2026年初中音乐与美术视听艺术融合
- 2026年临床实验数据电子采集与管理系统
- 2026年家庭医生团队服务模式在慢性病管理中的实践
- 2026年家庭会议制度与情绪表达规则
- 2026年鹅养殖保险与风险管理技术探讨
- 2026年广西真龙彩印包装有限公司笔试题及答案
- 河南资本集团笔试题库
- 2026湖北神农架林区公安局招聘辅警22人笔试备考试题及答案解析
- 2026菏泽特殊教育职业学校公开招聘人员(2人)考试模拟试题及答案解析
- 全国数据资源调查报告(2025年)
- 2026年ESG(可持续发展)考试题及答案
- 2026年防治碘缺乏病日宣传课件
- 身骑白马 SSA 三声部合唱谱
- 20S515 钢筋混凝土及砖砌排水检查井
- ESD标本病理检查规范处理流程
- 水污染控制工程 第四章 城镇雨水沟道的设计
评论
0/150
提交评论