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

来源:互联网 发布:什么是数据分析师 编辑:程序博客网 时间:2024/05/29 19:30

类声明

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());}


原创粉丝点击