MFC入门

MFC入门(以DDA画线为例)

编译器:vs2013

  1. 创建一个MFC项目
  2. 添加菜单响应函数
  3. 添加消息响应函数
  4. 添加自定义(成员)函数
  5. 小结

1. 创建MFC项目
a.新建一个项目

b.选择MFC->MFC应用程序,填写相应的项目名称、位置、解决方案名称
在这里插入图片描述
c.选择下一步
在这里插入图片描述
d.选择单个文档,项目类型为MFC标准,点击完成
在这里插入图片描述
2. 添加菜单响应函数
a.工具栏 视图->其他窗口->资源视图
双击IDR_MAINFRAME
在这里插入图片描述
b.添加菜单栏
在这里插入图片描述
c.右键点击一个子菜单,选择添加事件处理程序。

P.S 这里事件处理程序的意思就是告诉系统你将要执行的操作。比如我点击画线的子菜单DDA,我想要给系统传递一个消息:我即将要调用DDA算法,你要做好准备。所以一般在这个函数里面我们会想传递一下参数,让系统去识别这个信号,然后做出相应的操作。

d.点击后,进入到事件处理程序向导。
消息类型选择COMMAND
类列表选择以view结尾的
在函数处理程序名称里可以选择函数名称(函数命名每个单词首字母大写,最好可以表明函数的意义)。
在这里插入图片描述
e.点击添加编辑后,会自动进入到xxxview.cpp界面,这里可以编辑刚才创建的菜单响应函数。
在这里插入图片描述
P.S 在设置完菜单响应函数之后,系统知道了用户即将要做什么(比如即将调用DDA算法画线),但具体做什么(比如从那个点到哪个点要画线)系统需要对用户的操作做一个监听(消息响应)。

3. 添加消息响应函数
a.工具栏 视图->类视图
选择以view结尾的文件夹,右键选择类向导。
在这里插入图片描述
b.进入到类向导
这里注意几个地方:
1.检查项目名称
2.检查类名,一般以view结尾
3.检查类声明、类实现,一般也以view结尾
4.选择消息这一栏,双击添加你想要的处理程序,点击确认(也可以点击自定义消息函数,注意填写消息名称和函数名称)

P.S 这个地方一般是针对用户操作的一些默认消息对应的处理函数,例如BUTTONUP、BUTTONDOWN等对用户的一些行为进行监听并产生相应的结果。这里消息的种类需要重点去学习,可以帮助我们了解消息的类型以及它对应的处理程序的参数等,以便作出相应的操作。

在这里插入图片描述
c.点击之后也会自动切换到xxxview.cpp,在这里可以编辑刚才创建的消息响应函数。
在这里插入图片描述
4. 添加自定义(成员)函数
那么,在选择完消息函数之后。我们就可以根据用户行为进行一些操作。例如在用户左键点击画板的时候获取起点坐标,放开左键后获取终点坐标。但是我们仍然需要一个函数用来实现画线算法。(因为不论是用DDA实现画线还是用Bresenham实现画线,我们都需要获取两个端点坐标,不同实现需要通过和菜单响应函数进行匹配来使用)

这里的自定义函数不是用来响应用户行为,而是需要在程序内部自行调用。

a.工具栏 视图->类视图
右键以view结尾的文件夹,选择 添加 ->添加函数
进入到添加成员函数向导
填写函数信息,注意核查.cpp文件一般是以view结尾。在这里插入图片描述
5. 小结
可以看到MFC最重要的是菜单响应和消息响应,菜单响应在程序最开始的时候给程序传递一个信号,告诉系统用户即将进行的操作类型。然后在主程序中调用相应的成员函数,而成员函数的使用需要借助消息相应函数(例如点击鼠标时的坐标)。

  • 1
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值