在VS2010+OpenCV2.3.1控制台应用程序实现鼠标点击操作

来源:互联网 发布:铝镁合金拉杆箱 知乎 编辑:程序博客网 时间:2024/06/01 21:26

前提是正确配置好了OpenCV2.3.1,创建一个Win32控制台应用程序空工程,新建一个main.cpp将下面代码写入,即可实现鼠标点击获取:

#include "opencv2/core/core.hpp"#include "opencv2/highgui/highgui.hpp"#include <iostream>using namespace std;struct MouseEvent{    MouseEvent() { event = -1; buttonState = 0; }    cv::Point pt;    int event;    int buttonState;};static void onMouse(int event, int x, int y, int flags, void* userdata){    MouseEvent* data = (MouseEvent*)userdata;    data->event = event;    data->pt = cv::Point(x,y);    data->buttonState = flags;if(event==CV_EVENT_LBUTTONDOWN)cout<<"LDOWN ("<<x<<","<<y<<")"<<endl;else if(event==CV_EVENT_LBUTTONUP)cout<<"LUP ("<<x<<","<<y<<")"<<endl;}int main(){MouseEvent mouse;cv::namedWindow("button");cv::setMouseCallback("button",onMouse,&mouse);cv::Mat image=cv::Mat::zeros(1024,768,CV_8UC3);cv::imshow("button",image);cout<<"click"<<endl;cv::waitKey();}


 

原创粉丝点击