cv2.setMouseCallback(winname, onMouse, userdata=0)

winname: 自定义的窗口名

onMouse:鼠标事件的回调函数(在发生鼠标事件时执行)

userdata:传递给回调函数的可选参数

onMouse函数:

onMouse 是鼠标事件回调函数的默认原型,可自定义其函数名和函数内容,参数一般默认为

        onMouse(event, x, y, flags, param)

        event:cv2_EVENT_* (MouseEventTypes)类型的变量,为当前发生的鼠标事件类型

        x和y: 发生鼠标事件时鼠标在图像位置的x,y坐标

        flags:  cv2_EVENT_FLAG_* (MouseEventFlags)类型的变量

        param:自定义的传递给 setMouseCallback 函数调用的参数

MouseEventTypes:

        EVENT_MOUSEMOVE             #滑动
        EVENT_LBUTTONDOWN         #左键点击
        EVENT_RBUTTONDOWN        #右键点击
        EVENT_MBUTTONDOWN       #中键点击
        EVENT_LBUTTONUP               #左键放开
        EVENT_RBUTTONUP              #右键放开
        EVENT_MBUTTONUP              #中键放开
        EVENT_LBUTTONDBLCLK      #左键双击
        EVENT_RBUTTONDBLCLK     #右键双击
        EVENT_MBUTTONDBLCLK    #中键双击

MouseEventFlags:

        EVENT_FLAG_LBUTTON        #左键拖曳
        EVENT_FLAG_RBUTTON       #右键拖曳
        EVENT_FLAG_MBUTTON       #中键拖曳
        EVENT_FLAG_CTRLKEY        #按 Ctrl 不放
        EVENT_FLAG_SHIFTKEY       #按 Shift 不放
        EVENT_FLAG_ALTKEY           #按 Alt 不放

 

Logo

为开发者提供学习成长、分享交流、生态实践、资源工具等服务,帮助开发者快速成长。

更多推荐