您的位置:首页 > 移动开发 > Cocos引擎

cocos2d-x的初步学习八

2013-06-27 11:17 218 查看
这篇文章中,我们讲下cocos2dx中的菜单,菜单在游戏中非常常见,看下cocos2dx中菜单的结构:



OK,下面我们直接上代码:

CCLabelTTF *menuTTF=CCLabelTTF::create("菜单一", "ArialRoundedMTBold", 50);

CCMenuItemLabel *labelItem=CCMenuItemLabel::create(menuTTF, this, menu_selector(HelloWorld::menuItemCallBack));

labelItem->setPosition(ccp(200, 600));

//继承自CCMenuItemLabel
CCMenuItemFont *fontItem=CCMenuItemFont::create("菜单二", this, menu_selector(HelloWorld::menuItemCallBack));

fontItem->setPosition(ccp(200, 500));

//继承自CCMenuItemLabel
CCMenuItemAtlasFont *atlasFontItem=CCMenuItemAtlasFont::create("33333", "small_blue_number_level-hd.png", 16, 20, '0', this,  menu_selector(HelloWorld::menuItemCallBack));

atlasFontItem->setScale(2.0);
atlasFontItem->setPosition(ccp(200, 400));

CCSprite *onSprite=CCSprite::create("switchon.png");
CCSprite *offSprite=CCSprite::create("switchoff.png");

//选中未选中状态,还有一个函数里多了一个参数,disabled表示禁用状态
CCMenuItemSprite *spriteItem=CCMenuItemSprite::create(onSprite, offSprite, this, menu_selector(HelloWorld::menuItemCallBack));

spriteItem->setPosition(ccp(200, 300));

//CCMenuItemImage继承自CCMenuItemSprite
CCMenuItemImage *imageItem = CCMenuItemImage::create(
"CloseNormal.png",
"CloseSelected.png",
this,
menu_selector(HelloWorld::menuItemCallBack) );
imageItem->setPosition( ccp(200,200));

//开关,可以作为开关菜单样式
CCMenuItemToggle *toggleItem=CCMenuItemToggle::createWithTarget(this, menu_selector(HelloWorld::menuItemCallBack), CCMenuItemFont::create("无始"),CCMenuItemFont::create("狠人"),NULL);

toggleItem->setPosition(ccp(200, 100));

CCMenu* pMenu = CCMenu::create(labelItem,fontItem,atlasFontItem,spriteItem,imageItem
,toggleItem, NULL);
pMenu->setPosition( CCPointZero );
this->addChild(pMenu, 1);


OK,就这么简单,我们看下效果:

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: