Cocos2dx 学习笔记25 CCMenu菜单项

Cocos2dx 学习笔记25 CCMenu菜单项,第1张

概述Cocos2d-x的菜单中提供了多种菜单项的生成方式,他们都继承于MenuItem,如下图 1 CCMenuItemLable 包括CCMenuItemAtlasFont和CCMenuItemFont是两种定义菜单项字体的方式,其中CCMenuItemFont是通过设定字体名称来设置字体,这个字体是系统自带的,通过官方TestCpp中的实例可以查看其用法    // Label Item (Lab

Cocos2d-x的菜单中提供了多种菜单项的生成方式,他们都继承于MenuItem,如下图

1CcmenuItemLable

包括CcmenuItemAtlasFontCcmenuItemFont是两种定义菜单项字体的方式,其中CcmenuItemFont是通过设定字体名称来设置字体,这个字体是系统自带的,通过官方TestCpp中的实例可以查看其用法


// Label Item (LabelAtlas)
cclabelAtlas* labelAtlas = cclabelAtlas::create("0123456789","Fonts/labelatlas.png",16,24,'.');
CcmenuItemLabel* item3 = CcmenuItemLabel::create(labelAtlas,this,menu_selector(MenulayerMainMenu::menuCallbackDisabled) );
item3->setDisabledcolor( ccc3(32,32,64) );
item3->setcolor( ccc3(200,200,255) );

// Font Item
CcmenuItemFont *item4 = CcmenuItemFont::create("I toggle enable items",menu_selector(MenulayerMainMenu::menuCallbackEnable) );


item4->setFontSizeObj(20);
item4->setFontname("Marker Felt");

// Label Item (cclabelBMFont)
cclabelBMFont* label = cclabelBMFont::create("configuration","Fonts/bitmapFontTest3.fnt");
CcmenuItemLabel* item5 = CcmenuItemLabel::create(label,menu_selector(MenulayerMainMenu::menuCallbackConfig));


// Testing issue #500
item5->setScale( 0.8f );


// Events
CcmenuItemFont::setFontname("Marker Felt");
CcmenuItemFont *item6 = CcmenuItemFont::create("Priority Test",menu_selector(MenulayerMainMenu::menuCallbackPriorityTest));

// BUGs Item
CcmenuItemFont *item7 = CcmenuItemFont::create("BUGs",menu_selector(MenulayerMainMenu::menuCallbackBUGsTest));


// Font Item
CcmenuItemFont* item8 = CcmenuItemFont::create("Quit",menu_selector(MenulayerMainMenu::onQuit));

CcmenuItemFont* item9 = CcmenuItemFont::create("Remove menu item when moving",
menu_selector(MenulayerMainMenu::menuMovingCallback));

2.CcmenuItemSprite

这个菜单项的特点就是可以封装图片进入菜单项,用法如下

// Font Item
CCSprite* spritenormal = CCSprite::create(s_MenuItem,CCRectMake(0,23*2,115,23));
CCSprite* Spriteselected = CCSprite::create(s_MenuItem,23*1,23));
CCSprite* spriteDisabled = CCSprite::create(s_MenuItem,23*0,23));


CcmenuItemSprite* item1 = CcmenuItemSprite::create(spritenormal,Spriteselected,spriteDisabled,menu_selector(MenulayerMainMenu::menuCallback) );

// Image Item
CcmenuItem* item2 = CcmenuItemImage::create(s_Sendscore,s_PressSendscore,menu_selector(MenulayerMainMenu::menuCallback2) );


2.CcmenuItemToggle

CcmenuItemToggle可以将任意的CcmenuItem封装进去,作为一个按钮式的开关

CcmenuItemToggle* item1 = CcmenuItemToggle::createWithTarget(this,menu_selector(Menulayer4::menuCallback),CcmenuItemFont::create( "On" ),CcmenuItemFont::create( "Off"),NulL );

总结

以上是内存溢出为你收集整理的Cocos2dx 学习笔记25 CCMenu菜单项全部内容,希望文章能够帮你解决Cocos2dx 学习笔记25 CCMenu菜单项所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/web/1008918.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-22
下一篇 2022-05-22

发表评论

登录后才能评论

评论列表(0条)

保存