openCV鼠标响应函数

一、setMouseCallback()函数

void setMouseCallback(const string& winname,MouseCallback onMouse,void userdata = 0)
winname//窗口名字
onMouse//鼠标响应函数,回调函数,为on_Mouse函数
userdate//传给回调函数的参数

二、on_Mouse()函数

void on_Mouse(int event,int x,int y,int flags,void* param)
event//
x,y//鼠标指针在图像坐标系的坐标
flags//CV_EVENT_FLAG的组合,param是用户定义传到setMouseCallback函数调用的参数

三、EVENT
代表鼠标回传事件,每次鼠标有动作,event都会回传一个信息到on_Mouse()和鼠标移动的坐标。

#define CV_EVENT_MOUSEMOVE 0 滑动
#define CV_EVENT_LBUTTONDOWN 1 左键单击
#define CV_EVENT_RBUTTONDOWN 2 右键单击
#define CV_EVENT_MBUTTONDOWN 3 中键单击
#define CV_EVENT_LBUTTONUP 4 左键放开
#define CV_EVENT_RBUTTONUP 5 右鍵放开
#define CV_EVENT_MBUTTONUP 6 中鍵放开
#define CV_EVENT_LBUTTONDBLCLK 7 左鍵双击
#define CV_EVENT_RBUTTONDBLCLK 8 右鍵双击
#define CV_EVENT_MBUTTONDBLCLK 9 中鍵双击 

四、FLAG
代表拖拽事件

#define CV_EVENT_FLAG_LBUTTON 1 左鍵拖曳
#define CV_EVENT_FLAG_RBUTTON 2 右鍵拖曳
#define CV_EVENT_FLAG_MBUTTON 4 中鍵拖曳
#define CV_EVENT_FLAG_CTRLKEY 8 (8~15)按Ctrl不放事件
#define CV_EVENT_FLAG_SHIFTKEY 16 (16~31)按Shift不放事件
#define CV_EVENT_FLAG_ALTKEY 32 (32~39)按Alt不放事件
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值