3.【cocos2d-x-2.2.1】创建菜单

1. 如何创建多个按钮

精灵类按钮:

//获取屏幕大小
CCSize size = CCDirector::shareDirector()->getWinSize();
//创建两个图片按钮:未被选中以及选中时显示的图片精灵,按钮触发HelloWord类的方法menuStartCallback
CCMenuItamImage *pStart = CCMenuItemImage::create("Startnormal.png","StartSelect.png",this,menu_selector(HelloWord::menuStartCallback));
CCMenuItamImage *pClose= CCMenuItemImage::create("Closenormal.png","CloseSelect.png",this,menu_selector(HelloWord::menuCloseCallback));
/*
*方法一
*/
//创建菜单并添加按钮
CCMenu* menu = CCMenu::create(pStart,pClose,NULL);
//设置菜单位置
menu->setPosition(ccp(size.width/2,size.height/2));
//设置菜单,按钮行间距30
menu->alignltemsVerticallyWithPadding(30);
//添加菜单到图层
this->addChild(menu);
/*
*方法二
*/
//设置两个按钮的坐标
pStart->setPosition(ccp(size.width/2,size.height-pStart->getConentSize().height));
pClose->setPosition(ccp(size.width/2,size.height-pStart->getConentSize().height-pClose->getConentSize().height));
//创建菜单并添加按钮
CCMenu* menu = CCMenu::create(pStart,pClose,NULL);
menu->setPosition(CCPointZero);
this->addChild(menu);

文本类按钮:

    CCSize visibleSize = CCDirector::sharedDirector()->getVisibleSize();
/*-----------------------------
*	测试--创建一个文本按钮-方法一
*	CCLabelTTF	CCMenuItemLabel
-----------------------------*/
CCLabelTTF* pLabel1 = CCLabelTTF::create("I am Button","Arial",30);			//创建一个文本
CCMenuItemLabel* pMenuItemLabel = CCMenuItemLabel::create(pLabel1);			//通过文本创建一个文本按钮
pMenuItemLabel->setPosition(ccp(visibleSize.width/2,visibleSize.height/2));		//设置文本按钮的坐标点		
CCMenu* pMenu1 = CCMenu::create(pMenuItemLabel,NULL);					//把按钮添加到menu层
pMenu1->setPosition(CCPointZero);							//设置按钮在menu层的坐标
this->addChild(pMenu1,1);								//把Menu层放到当前图层
  	
/*-----------------------------
*	测试--创建一个文本按钮-方法二
*	CCMenulItemFont
-----------------------------*/
CCMenuItemFont* pMenuItemFont = CCMenuItemFont::create("Font Button",this,NULL);	//创建一个文本按钮
pMenuItemFont->setPosition(ccp(visibleSize.width - pMenuItemFont->getContentSize().width/2,visibleSize.height - pMenuItemFont->getContentSize().height/2	//设置文本按钮的坐标点
CCMenu* pMenu2 = CCMenu::create(pMenuItemFont,NULL);					//把文本按钮添加到Menu层
pMenu2->setPosition(CCPointZero); 					//设置文本按钮相对于Menu层的坐标
this->addChild(pMenu2,1); 								//把Menu层显示到当前图层

 

 

                
  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值