cocos2d-x——CCCallFunc家族例子
来源:互联网 发布:struts2源码分析 pdf 编辑:程序博客网 时间:2024/05/29 09:57
boolHelloWorld::init()
{
//////////////////////////////
// 1. super init first
if ( !CCLayer::init() )
{
returnfalse;
}
CCSprite *sp = CCSprite::create("Icon.png");
sp->setPosition(ccp(100,100));
this->addChild(sp,0, 1);
CCLabelTTF *ttf = CCLabelTTF::create("函数回调动作","宋体",24);
CCMenuItemLabel *label =CCMenuItemLabel::create(ttf,this,menu_selector(HelloWorld::menuCallback));
label->setPosition(ccp(0,80));
CCMenu *menu = CCMenu::create(label,NULL);
this->addChild(menu);
returntrue;
}
voidHelloWorld::menuCallback(CCObject* pSender)
{
CCSprite* sp = (CCSprite*)this->getChildByTag(1);
CCActionInterval* move = CCMoveTo::create(1,ccp(300,sp->getPositionY()));
// //1
CCCallFunc * funCall =CCCallFunc::create(this,callfunc_selector(HelloWorld::callbackC));
//2
//CCCallFuncN * funCall =CCCallFuncN::create(this, callfuncN_selector(HelloWorld::callbackN));
//3
// float *data = (float*)malloc(sizeof(float));
// *data = 200;
// CCCallFuncND * funCall =CCCallFuncND::create(this, callfuncND_selector(HelloWorld::callbackND), (void*)data);
// //4
// CCSprite *sp1 = CCSprite::create("Icon-72.png");
// CCCallFuncO * funCall =CCCallFuncO::create(this, callfuncO_selector(HelloWorld::callbackO), (CCObject*)sp1);
//
CCFiniteTimeAction *seq =CCSequence::create(move,funCall,NULL);
sp->runAction(seq);
((CCMenuItemLabel *)pSender)->setEnabled(false);
}
voidHelloWorld::callbackC()
{
CCSprite* sp = (CCSprite*)this->getChildByTag(1);
this->removeChild(sp);
CCLabelTTF *ttf = CCLabelTTF::create("移动动作执行完毕","仿宋",24);
ttf->setPosition(ccp(300,150));
this->addChild(ttf);
}
voidHelloWorld::callbackN(CCNode* sender)
{
this->removeChild(sender);
CCLabelTTF *ttf = CCLabelTTF::create("N移动动作执行完毕","仿宋",24);
ttf->setPosition(ccp(300,150));
this->addChild(ttf);
}
voidHelloWorld::callbackND(CCNode* sender,void* data)
{
this->removeChild(sender);
float y = *(float*)data;
char str[100];
sprintf(str,"ND移动动作执行完毕, 传过来的数据是:%f", y);
CCLabelTTF *ttf = CCLabelTTF::create(str, "仿宋",24);
ttf->setPosition(ccp(300, y));
free(data);
this->addChild(ttf);
}
voidHelloWorld::callbackO(CCObject* sender)
{
CCLabelTTF *ttf = CCLabelTTF::create("O移动动作执行完毕","仿宋",24);
ttf->setPosition(ccp(300,150));
this->addChild(ttf);
CCSprite *sp = (CCSprite*)sender;
sp->setPosition(ccp(300,100));
this->addChild(sp, -1);
}
- cocos2d-x——CCCallFunc家族例子
- cocos2d-x——CCCallFunc家族例子
- cocos2d-x——CCCallFunc家族
- cocos2d-x——CCCallFunc家族
- Cocos2d-x之 CCCallFunC家族
- Cocos2d-x之 CCCallFunC家族
- cocos2d-x CCCallFunc系列
- cocos2d-x学习笔记 动作 CCCallFunc家族(回调函数包装器)
- Cocos2d-x翻译——Cocos2d家族之间的关系
- CCCallFunC家族
- cocos2d-x CCCallFunc系列函数的应用
- cocos2d-x CCCallFunc系列函数的应用
- cocos2d-x CCCallFunc系列函数的应用
- cocos2d-x CCCallFunc系列函数的应用
- cocos2d-x CCCallFunc系列函数的应用
- cocos2d-x CCCallFunc系列函数的应用
- cocos2d-x CCCallFunc系列函数的应用
- cocos2d-x CCCallFunc系列函数的应用
- 坐标变换 及矩阵变换
- Unity3d中的属性(Attributes)整理
- Android 判断现在系统存储器是“手机存储”还是“SD存储”
- android inflater 用法
- dmesg打印信息如何后台保存到文件中
- cocos2d-x——CCCallFunc家族例子
- uva10344 一次AC
- mysql 清除密码
- http状态码
- POI中设置Excel单元格格式样式(居中,字体,边框等)
- 【C语言】宏定义的一些所见所闻和心得
- 原型设计Axure
- 【SQL】使用ROW_NUMBER() OVER 实现DISTINCT功能
- PivotGridControl控件应用