cocos2d-x 中 CCMenu回调函数 调用父类的参数

原创 2013年12月05日 11:27:39

类声明

class Base:public CCNode
{
public:
	BuildBase(void);
	~BuildBase(void);
	CREATE_FUNC(Base);
	virtual bool init();

public:
	//设置数据
	void SetBuildData(char *Iamge, char *Name, int &Hp);
	//按键回调函数
	void CallBack(CCObject *pSender);
	
public:

	string Build_Name;
	int BuildHp, MaxHp;
	
};


类具体调用

void Base::SetBuildData(char *Iamge, char *Name, int &Hp){
	
	Build = CCSprite::createWithSpriteFrameName(Iamge);
	Build->setRotation(15);//旋转角度

	CCMenuItem *pItem = CCMenuItemSprite::create(Build, Build, Build, menu_selector(Base::CallBack));
	
	CCMenu *pMenu = CCMenu::create(pItem, NULL);
	pMenu->setPosition(ccp(0, 0));
	this->addChild(pMenu);

	BuildHp = MaxHp = Hp;
	Build_Name = Name;

}

void BuildBase::CallBack(CCObject *pSender){ //pSender是所点击的图片 及 item里的图片

	CCSprite* pbuild = (CCSprite *) pSender;
        //获取父类CCMenu, 和CCMenu的父类
	Base *pbu = (Base *)pbuild->getParent()->getParent();
	
	CCLog("=============%d, now :%d, is who %s",pbu->MaxHp, pbu->BuildHp, pbu->Build_Name.c_str());

}


【玩转cocos2d-x之十三】CCMenu的布局

前两天写个游戏,发现CCMenu的布局还是比较有意思的,这里总结一下,以便后用。 1.概况 CCMenu是cocos2d-x的菜单类,但它本身并不具备菜单具体属性,而是作为一个父节点,将一些具...
  • jackyvincefu
  • jackyvincefu
  • 2013年10月21日 09:30
  • 8858

cocos2d-x学习笔记-CCMenu和CCMenuItem详解

http://codingnow.cn/cocos2d-x/832.html 学习cocos2d-x中的菜单主要需要了解:菜单(CCMenu)和菜单项(CCMenuItem)以及CC...
  • xinpo66
  • xinpo66
  • 2014年02月24日 23:15
  • 4999

Cocos2d-x 3.X 里的回调函数及其参数适配

作为一个游戏引擎,为了满足用户的各种响应需求,必然要大量用到回调函数(关于什么是回调函数,请参考这里)。Cocos2d-x 3.X里面至少有以下三个地方需要用到回调函数。...
  • u014078216
  • u014078216
  • 2016年01月11日 23:37
  • 1338

cocos2d-x 回调函数详解

转自:http://blog.csdn.net/zhanglongit/article/details/8550367   cocos2d-x中有大量的回调函数的应用,主要有以下几类,看下CCOb...
  • gf771115
  • gf771115
  • 2013年05月29日 20:49
  • 3473

Cocos2d-x 3.0 新特性体验(2) 回调函数的变化

在cocos2d-x 2.x版本中的回调函数的用法想必大家都很是熟悉,例如在menu item,call back action中都需要大量的使用到回调函数,但是在使用过程中总是感觉到比较冗余麻烦的,...
  • Crayon_DyS
  • Crayon_DyS
  • 2014年01月26日 14:26
  • 13060

在子类中调用父类的带参数的构造函数

animal类的构造函数,增加两个参数height和weight,分别表示动物的高度和重量。代码如例2-13所示。   例2-13 双击代码全选 1 ...
  • otuhacker
  • otuhacker
  • 2013年08月24日 11:37
  • 2205

什么时候必须显式的调用父类构造函…

package HighNewTech; public class Parent { private String name= null; private int age = 0; Parent(S...
  • zhaoyingkun
  • zhaoyingkun
  • 2015年03月05日 15:31
  • 1125

Java中父类和子类中的方法调用和参数传递探讨

有这样一段程序,看看它会输出什么结果public class Test { public static void main(String [] args){ Syste...
  • xiaokang123456kao
  • xiaokang123456kao
  • 2017年07月16日 00:56
  • 2173

java中子类调用父类的构造方法

在Java中,子类的构造过程中,必须调用其父类的构造函数,是因为有继承关系存在时,子类要把父类的内容继承下来,通过什么手段做到的?    答案如下:      当你new一个子类对象的时候,必须首...
  • u010102951
  • u010102951
  • 2014年11月21日 18:40
  • 4595

Python实现子类调用父类的方法

如下代码:class A: def __init__(self): self.namea="aaa" def funca(self): print "f...
  • chenlei_525
  • chenlei_525
  • 2017年04月21日 10:57
  • 2101
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:cocos2d-x 中 CCMenu回调函数 调用父类的参数
举报原因:
原因补充:

(最多只允许输入30个字)