C ++: int createTrackbar(const string& trackbarname, const string& winname, int* value, int count, TrackbarCallback onChange=0, void* userdata=0) 在上面提到的函数中,用户数据是什么,它将如何在回调函数中使用
1504 次
1 回答
4
该参数与回调函数一起很有用,如下所示:
void onChange (int trackpos , void *userdata);
例如,您可以将图像(地址)传递给它:
Mat img; // e.g from a webcam
int b=3; // blur value
namedWindow("win");
createTrackBar("blur","win", &b, 100, onChange, (void*)(&img) );
并在回调中使用它:
void onChange (int trackpos , void *userdata)
{
Mat img = *((Mat*)userdata); // 1st cast, then deref
Mat b2;
blur( img,b2, Size(trackpos,trackpos));
imshow("win",b2);
waitKey(10);
}
于 2014-06-14T10:31:25.430 回答