现在的位置: 首页 > 综合 > 正文

Cocos2d 摸索[3]: 鼠标点击(手势触摸)事件

2013年08月16日 ⁄ 综合 ⁄ 共 1080字 ⁄ 字号 评论关闭

在 HelloWorld 类里面

重写手势的虚函数

class HelloWorld : public cocos2d::CCLayer
{
public:
	virtual bool ccTouchBegan(CCTouch *pTouch, CCEvent *pEvent);
	virtual void ccTouchMoved(CCTouch *pTouch, CCEvent *pEvent);
	virtual void ccTouchEnded(CCTouch *pTouch, CCEvent *pEvent);
	virtual void ccTouchCancelled(CCTouch *pTouch, CCEvent *pEvent);
        virtual void onEnter();

/* ---------------------------*/
}

我们现在什么也不做, 只用 OutPut 输出划过的坐标

bool HelloWorld::ccTouchBegan(CCTouch *pTouch, CCEvent *pEvent)
{
	// 按下
	CCLOG("ccTouchBegan %.2f %.2f",pTouch->getLocation().x, pTouch->getLocation().y);
	return true;
}
void HelloWorld::ccTouchMoved(CCTouch *pTouch, CCEvent *pEvent)
{
	// 滑动
	CCLOG("ccTouchMoved %.2f %.2f",pTouch->getLocation().x, pTouch->getLocation().y);
}
void HelloWorld::ccTouchEnded(CCTouch *pTouch, CCEvent *pEvent)
{
	// 弹起
	CCLOG("ccTouchEnded %.2f %.2f",pTouch->getLocation().x, pTouch->getLocation().y);
}
void HelloWorld::ccTouchCancelled(CCTouch *pTouch, CCEvent *pEvent)
{
	// 中断
}
void HelloWorld::onEnter()
{
	CCLayer::onEnter();
	// 打开接收事件
	this->setTouchEnabled(true);  
	CCDirector::sharedDirector()->getTouchDispatcher()->addTargetedDelegate(this, 0, true);
}

在输出栏可以看到输出的坐标, cocos 是 左下角为 (0, 0) 的坐标系

抱歉!评论已关闭.