急急急!!!求助思路,实现 模拟系统转发触摸消息,从而实现响应Button控件,回调函数的功能。

//待响应按钮
Button *btn = Button::create(“icon.png”);
btn->setPosition(Vec2(100,700));
btn->addTouchEventListener(this,toucheventselector(MainMenuScene::ButtonCallBack));
addChild(btn);

//建立触摸消息,并装填点击位置等信息
Touch* touch = new Touch();
touch->setTouchInfo(0,100,700);

//将消息装入容器
std::vector<Touch*> vetTouch;
vetTouch.push_back(touch);
//设置触摸事件
EventTouch* entTouch = new EventTouch();
entTouch->setTouches(vetTouch);
entTouch->setEventCode(EventTouch::EventCode::BEGAN);
//发送触摸消息
EventDispatcher* dispatch = Director::getInstance()->getEventDispatcher();

// dispatch->resumeEventListenersForTarget(btn);
dispatch->dispatchEvent(entTouch);

分割******
以上是一段测试代码,如果是通过EventListenerTouchOneByOne::create()绑定的对象;以上消息分发能成功调用。
但对于Button控件无法成功调用,跟踪过调用信息,上面的消息转发代码与真实触摸消息转发的类型相同。
区别在于最后调用回调函数的时候,无法像真实触摸事件一样成功调用回调函数。

请论坛各位大神们指点一二问题。拜谢拜谢!:5:

拿ios举例子,看CCEAGLView-ios.mm文件的touchesBegan相关方法,只要构造同样的数据提供给glview调用就能模拟触摸事件

谢谢,问题已经解决了哈。