MFC程序的创建+一个简单的消息映射的实现

一、前置

本机环境:Win11,VS2022

首先要保证VS中已经安装MFC扩展包,未安装可以在工具->获取工具和功能 中搜索安装
在这里插入图片描述

二、MFC程序创建

下面是MFC程序创建过程

  1. 搜索MFC,选择MFC应用,点击下一步
    在这里插入图片描述
  2. 填写项目名称,选择项目位置,创建
    在这里插入图片描述
  3. 选择单个文档、项目样式选择MFC standard,点击完成即可创建成功
    在这里插入图片描述
  4. 在 生成的类 中,发现一共会生成五种类:App类相当于MFC程序的入口;Doc类用来管理数据;Frame类是框架类,可以理解成窗口;View类即视类。直接点击完成即可创建成功。
    在这里插入图片描述

可以直接运行,生成以下窗口
运行效果

三、一个简单的消息映射

功能描述

点击窗口中的任意位置,跳出一个新的窗口,显示点击处的坐标

功能实现

分析功能,本质上我们希望 窗口 响应 点击事件 ,并生成一个窗口,窗口中文字是自定义的。但是frame是框架类,view是视类,是真正进行显示的部分,有关显示的东西全部都写到View类。

  1. 双击类视图中的CView,即可跳转到对应的.h文件中,发现CView类中已经写好声明宏DECLARE_MESSAGE_MAP(),意思是可以将消息映射到属于该类的对象中
    在这里插入图片描述

  2. 接着双击该类下的任意一个函数,即可跳转到.cpp文件,发现分界宏已经有了,我们希望受到响应的事件/消息可以在分界宏之间定义
    在这里插入图片描述

  3. 右击C***View,点击属性,选择消息
    在这里插入图片描述

  4. 找到OnLButtonDown,点击add,就可以自动生成函数,现在只需要填充函数内容即可
    在这里插入图片描述

  5. 在OnLButtonDown函数中进行实现,代码如下所示

// 注意把类名换成自己的
void CSmallDrawingSystemView::OnLButtonDown(UINT nFlags, CPoint point)
{
	// TODO: 在此添加消息处理程序代码和/或调用默认值

	CView::OnLButtonDown(nFlags, point);

	CString str;
	str.Format(TEXT("x=%d, y=%d"), point.x, point.y);

	MessageBox(str);
}
  1. 点击运行,效果如下
    在这里插入图片描述
  • 2
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值