5.控制鼠标
函数定义
def mouse_callback(event,x,y,flags,userdata):
print(event,x,y,flags,userdata)
- 函数名可以随便取,但是参数必须是5个
- event表示鼠标事件,x,y是鼠标的坐标
- flags鼠标的组合按键
- userdata表示用户的数据
cv2.setMouseCallback(窗口,函数,用户信息)
- 函数为上面定义的函数 ,注意不加括号,否则会报缺少参数的错误
- 用户信息为字符串,eg “123”
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24#!/usr/bin/env python
# -*- coding: UTF-8 -*-
"""
@Project :Opencv学习
@File :控制鼠标.py
@IDE :PyCharm
@Author :咋
@Date :2023/1/11 18:05
"""
import cv2
def mouse_callback(event,x,y,flags,userdata):
print(event,x,y,flags,userdata)
if event == 3:
cv2.destroyAllWindows() # 摧毁窗口之后,后面的循环又会创建新的窗口显示出来,所以会出现一闪的效果
image = cv2.imread("image.jpg")
image = cv2.resize(image,(620,480))
while True:
cv2.imshow("image",image)
cv2.setMouseCallback("image",mouse_callback,"123")
if cv2.waitKey(0) == ord("q"):
break
cv2.destroyAllWindows()
本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来自 咋的个人博客!