VC++60 第五章 如何设计鼠标事件
来源:互联网 发布:html砸金蛋源码下载 编辑:程序博客网 时间:2024/06/09 21:08
第五章如何设计鼠标事件
鼠标的每一个动作都是一个事件,应用程序可以捕获这个事件,并对它作出相应的处理,当然也可以不予理睬。鼠标事件有(左键)单击,双击,右键单击,左键按下,鼠标移动等,本章通过用鼠标画图的例程来介绍如何设计鼠标事件。
本章要点
1 为鼠标事件添加消息映射
2 为鼠标事件函数添加代码
3 在面版上画图-画直线的方法
5.1 Draw.exe的界面和功能
chap05-01
程序的上方是文字提示,下面有两个按钮。按下鼠标时移动就可以画出任意图形,用[清除]按钮可靠以抹掉图形。
5.2 Draw程序的界面设计
先创建工程文件,在“D:\myVC\CHO5\”建立Draw程序;MFC标准的对话框模式;用静态DLL支持。
设计工程的界面,参考下列属性表设计如图chap05-01的界面。
控件和标题IDStylesExtended Styles按钮[测试]IDC_CLEAR_BUTTON默认Client edgeStatic edge
Modal Form按钮[退出]IDOK静态文本[画图...]IDC_STATIC对齐方式:居中 对话框 Draw程序IDD_DRAW_DIALOGTitle, sysytem menu
对话框设置字体大为12。编译和运行。
5.3 编写代码
画一条任意曲线实际上是由很短的直线段构成的,这需要从前一点向当前点即鼠标的现在位置画直线。所以需要定义两个变量来存放前一点的坐标。在鼠标移动时不断地画直线,这需要引进一个消息映射WM_MOUSEMOVE。另外,在面版上画图需要定义一个屏幕设备对象CClientDC dc(this)。
1 在头文件DrawDlg.h中定义变量:
2 在对话框CDrawDlg中消息映射WM_MOUSEMOVE。在类向导中选中对话框DrawDlg,再在消息列表框中寻找WM_MOUSEMOVE,选中后点击Add Function,就生成函数OnMouseMove(),点Add code立即输入代码。
3 函数OnMouseMove()的代码
void CDrawDlg::OnMouseMove(UINT nFlags, CPoint point)
{
}
4 给“鼠标按下”写代码
添加消息映射WM_MOUSEDOWN,函数OnLButtonDown的功能是保存鼠标点击的当前点,代码为:
5 给清除按钮写代码
该函数的功能是调用Panit函数重画对话框。
编译和运行。
—END—
- VC++60 第五章 如何设计鼠标事件
- vc++如何响应键盘和鼠标事件
- vc中如何响应键盘和鼠标事件
- vc中如何响应键盘和鼠标事件
- vc中如何响应键盘和鼠标事件
- vc中如何响应键盘和鼠标事件
- vc中如何响应键盘和鼠标事件
- vc中如何响应键盘和鼠标事件
- VC对话框如何检测鼠标离开窗体的事件?
- VC 动态控制鼠标点击事件
- VC win32 键盘 鼠标事件
- VC 动态控制鼠标点击事件
- [VC] 鼠标事件的响应
- VC API 模拟鼠标事件
- VC 动态控制鼠标点击事件
- VC++ 鼠标事件、键盘事件模拟
- 在vc中如何实现对静态文本的鼠标点击事件的处理?
- VC窗体获取鼠标离开事件
- 如何从一个零鸭蛋完成大神的跳跃
- Mock方法介绍
- Android中各种Span的用法
- html5移动端知识点总结(一)
- scikit-learn使用joblib.dump()持久化模型过程中的问题详解--python
- VC++60 第五章 如何设计鼠标事件
- 【python】深拷贝和浅拷贝
- spring+jedis
- Leetcode 65. Valid Number(Hard)
- MYSQL|ORACLE的数据库链接实例______软件开发-数据库
- 经典C程序习题——一个数学问题
- AIM Tech Round 3 (Div. 1) B. Recover the String 构造
- Docker系列~安装MySQL(五)
- VC++60 第六章 键盘事件