Opencv的鼠标事件

2023-05-16

import cv2
import numpy as np

cv2.namedWindow("new")
def drawxxx(event,x,y,flags,param): #鼠标事件回调函数
    #参数 (事件,x轴位置,y轴位置,标记,属性)
    """
    event:
        EVENT_MOUSEMOVE 0            #滑动
        EVENT_LBUTTONDOWN 1          #左键点击
        EVENT_RBUTTONDOWN 2          #右键点击
        EVENT_MBUTTONDOWN 3          #中键点击
        EVENT_LBUTTONUP 4            #左键放开
        EVENT_RBUTTONUP 5            #右键放开
        EVENT_MBUTTONUP 6            #中键放开
        EVENT_LBUTTONDBLCLK 7        #左键双击
        EVENT_RBUTTONDBLCLK 8        #右键双击
        EVENT_MBUTTONDBLCLK 9        #中键双击
    x,y:
        x,y,代表鼠标位于窗口的(x,y)坐标位置
    flags:
        代表鼠标的拖拽事件,以及键盘鼠标联合事件
        EVENT_FLAG_LBUTTON 1       #左鍵拖曳
        EVENT_FLAG_RBUTTON 2       #右鍵拖曳
        EVENT_FLAG_MBUTTON 4       #中鍵拖曳
        EVENT_FLAG_CTRLKEY 8       #(8~15)按Ctrl不放事件
        EVENT_FLAG_SHIFTKEY 16     #(16~31)按Shift不放事件
        EVENT_FLAG_ALTKEY 32       #(32~39)按Alt不放事件
        比如:按住CTRL键 单击左键  返回8+1=9
    :param param:不知道有什么用
    """

    if event==cv2.EVENT_LBUTTONDOWN :
        print('你单机了鼠标左键,鼠标坐标为:%s %s'%(x,y))
        print(flags)
        print(param)

    if event==cv2.EVENT_RBUTTONDOWN :
        print('你单机了鼠标右键,鼠标坐标为:%s %s'%(x,y))
        print(flags)
        print(param)

    pass

cv2.setMouseCallback("new",drawxxx)  #注册鼠标监听事件(窗口,回调函数)
img = 255*np.ones((240,480,3),np.uint8)
cv2.imshow('new',img)


cv2.waitKey()
cv2.destroyAllWindows()
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Opencv的鼠标事件 的相关文章

随机推荐

  • 正则表达式——验证数字

    验证数字 xff1a span class token operator span span class token punctuation span span class token number 0 span span class to
  • PyQt——QTableWidget

    span class token keyword import span sys span class token keyword from span PyQt5 span class token punctuation span QtWi
  • PyQt——QListView

    span class token comment coding utf 8 span span class token triple quoted string string 39 39 39 简介 PyQt5中 QListView 例子
  • PyQt——QListWidget

    span class token comment coding utf 8 span span class token triple quoted string string 39 39 39 简介 PyQt5中 QListWidget 例
  • PyQt——QTabWidget

    span class token comment coding utf 8 span span class token triple quoted string string 39 39 39 简介 PyQt5中 QTabWidget 例子
  • PyQt——QStackedWidget

    span class token comment coding utf 8 span span class token triple quoted string string 39 39 39 简介 PyQt5中 QStackedWidge
  • PyQt——QDockWidget

    span class token comment coding utf 8 span span class token triple quoted string string 39 39 39 简介 PyQt5中 QDockWidget 例
  • lingo入门教程之二 --- 集合运用

    lingo中的集合用法很多 xff0c 这里主要通过几个例题来进行讲解 对于每一个问题 xff0c 都要先找到对应的目标函数 xff0c 然后对相应值进行初始化 xff0c 然后找到约束条件等进行求解 例1 xff1a SAILCO公司需要
  • PyQt——MDI(多文档界面)

    span class token comment coding utf 8 span span class token triple quoted string string 39 39 39 简介 PyQt5中 QMdiArea 例子 3
  • PyQt——QScrollBar

    span class token comment coding utf 8 span span class token triple quoted string string 39 39 39 简介 PyQt5中 QScrollBar 例子
  • PyQt——QTimer

    span class token comment coding utf 8 span span class token triple quoted string string 39 39 39 简介 PyQT5中 QTimer例子 39 3
  • PyQt——QThread

    span class token comment coding utf 8 span span class token triple quoted string string 39 39 39 简介 PyQT5中 QThread 例子 39
  • PyQt——事件处理

    PyQt事件处理 前言1 低级的事件处理程序2 事件处理机制1 事件机制与信号槽机制的区别2 事件处理的方法3 事件处理实例 前言 1 低级的事件处理程序 span class token comment coding utf 8 span
  • python——精华技巧

    1 大量的if else结构采用字典key来匹配 days span class token operator 61 span span class token string 34 Mon Tue Wed Thu Fri Sat Sun 3
  • Python使用struct处理二进制(pack和unpack用法)

    python有时需要处理二进制数据 xff0c 例如 存取文件 xff0c socket操作时 这时候 xff0c 可以使用python的struct模块来完成 可以用struct来处理c语言中的结构体 一 struct模块中最重要的三个函
  • PyQt——QGroupBox

    QGroupBox为构建分组框提供了支持 分组框通常带有一个边框和一个标题栏 xff0c 作为容器部件来使用 xff0c 在其中可以布置各种窗口部件 布局时可用作一组控件的容器 xff0c 但是需要注意的是 xff0c 内部必须使用布局控件
  • PyQt——高清屏幕自适应设置

    Qt Designer 设计界面 xff1a 在高清屏未设置AA EnableHighDpiScaling的预览界面 xff1a 布局字体控件尺寸上明显存在偏差 设置了AA EnableHighDpiScaling的预览界面 xff1a 运
  • PyQt——实现多窗口

    主窗口通过按钮显示子窗口 1 使用qtdesigner设计窗口 主窗口 xff1a main window 子窗口 xff1a Dialog 生成的是ui文件 2 为两个窗口生成py文件 3 创建两个窗口的继承类 span class to
  • 《统计学习方法》各章节代码实现与课后习题参考解答

    待完成 统计学习方法 各章节代码实现与课后习题参考解答 章节代码课后习题第1章 统计学习方法概论 LeastSquaresMethod 传送门传送门 第2章 感知机 Perceptron 传送门传送门第3章 k近邻法 KNearestNei
  • Opencv的鼠标事件

    span class token keyword import span cv2 span class token keyword import span numpy span class token keyword as span np