1.ExMessage为easy.h中已定义的鼠标消息结构体变量
ExMessage msg={0}; //初始化msg消息结构体
2.while(xxx)的作用
创建循环,使程序能够持续接收鼠标消息
(否则只能接收一次,且可能并没接收到消息就结束了)
3.peekmessage(ExMessage*, EX_MOUSE)
接收鼠标消息的函数,返回值为bool类型
例如:if(peekmessage(&msg, EX_MOUSE))
4.esg.message(结构体成员变量)
5.msg.x msg.y
鼠标的横纵坐标
6.msg.wheel
鼠标滚轮滚动值,正向滚动为120,反向滚动为-120
#include<easyx.h>
#include<iostream>
using namespace std;
int main()
{
initgraph(680, 480, EX_SHOWCONSOLE | EX_DBLCLKS);
setbkcolor(RGB(155, 251, 253));
cleardevice();
//定义消息结构体变量
ExMessage msg = { 0 };
while (1)
{
//获取消息
if (peekmessage(&msg, EX_MOUSE))
{
switch (msg.message)
{
case WM_LBUTTONDOWN://左键按下
cout << "左键按下" << '(' << msg.x << ',' << msg.y << ')' << endl;
break;
case WM_RBUTTONDOWN://右键按下
cout << "右键按下" << '(' << msg.x << ',' << msg.y << ')' << endl;
break;
case WM_MOUSEWHEEL://滚轮滚动
cout << "滚轮滚动" << ' ' << msg.wheel << endl;
break;
case WM_LBUTTONDBLCLK://左键双击
cout << "左键双击" << '(' << msg.x << ',' << msg.y << ')' << endl;
break;
//case WM_MOUSEMOVE://鼠标移动
//cout << "鼠标移动" << endl;
}
}
}
getchar();
closegraph();
return 0;
}