码迷,mamicode.com
首页 > 其他好文 > 详细

实训九(游戏退出按钮的实现)

时间:2016-09-21 06:47:41      阅读:143      评论:0      收藏:0      [点我收藏+]

标签:

主要是涉及引擎中menu的使用

常见的几种使用方法

1、可变换图标

auto closeItem = MenuItemImage::create(
                                           "CloseNormal.png",
                                           "CloseSelected.png",
                                           CC_CALLBACK_1(HelloWorld::menuCloseCallback, this));
   
 closeItem->setPosition(Vec2(origin.x + visibleSize.width - closeItem->getContentSize().width/2 ,
                                origin.y + closeItem->getContentSize().height/2));

    // create menu, it‘s an autorelease object
    auto menu = Menu::create(closeItem, NULL);
    menu->setPosition(Vec2::ZERO);
    this->addChild(menu, 1);

但是,请注意this->addChild(menu, 1);  当项目中涉及到用数字区分或者记录位置时,如果初始定义了1的具体含义,这里就不能用了

2、文本菜按钮单项,通过指定文本标签,这个点击会有放大效果。先创建一个文本,然后绑在CCMenuItemLabel
上面就可以做按钮了

CCLabelTTF* pLabel = CCLabelTTF::create("button", "Arial", 30);//参数分别是:按钮要显示的文字,字体,字号
CCMenuItemLabel* pBtn = CCMenuItemLabel::create(pLabel) ;
pBtn->setPosition(ccp(100, 100));
CCMenu* pMenu = CCMenu::create(pBtn, NULL);
pMenu->setPosition(CCPointZero);
this->addChild(pMenu);

3、CCMenuItemImage /CCMenuItemFont  + CCMenuItemToggle + CCMenu

这种方法创建的图片按钮在点击之后不会有显示效果切换,例如现在显示start,点击之后会显示stop,不在变化,若再次点击,才会变回start。

 

	CCMenuItemFont* start = CCMenuItemFont::create("start");
	CCMenuItemFont* stop = CCMenuItemFont::create("stop");
	CCMenuItemToggle* toggle = CCMenuItemToggle::createWithTarget(this, menu_selector(MyLayer::show), start, stop, NULL);
	toggle->setPosition(ccp(100, 100));
	CCMenu* menu = CCMenu::create(toggle,NULL);
	menu->setPosition(CCPointZero);
	addChild(menu);

 

实训九(游戏退出按钮的实现)

标签:

原文地址:http://www.cnblogs.com/revenge/p/5891214.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!