zoukankan      html  css  js  c++  java
  • cocos2d-x 菜单

    菜单在游戏中是非常常见的控件之一。下面来分析下在cocos2dx中有那些菜单。

    一共有六种菜单。

    CCMenu在创建时需要使用CCMenuItem来创建。

    CCMenu继承自CCLayer,是一个菜单管理选择画面层,该画面以Menu对象为集合类,由MenuItem类实例组成各种按钮。CCMenu类提供的方法主要用来按横向、竖向或者多行列排序展示MenueItem的类实例。同时,CCMenu只支持CCMenuItem节点作为它的子节点。

    注意 CCMenuItem是基础类,不能直接用来创建菜单,它的作用主要是设置按钮状态以及处理回调方法。需要使用CCMenuItem的子类来创建定制菜单项。

    //----CCMenuItemFont
        CCMenuItemFont*  itemFont = CCMenuItemFont::create("开始游戏", this,menu_selector(HelloWorld::menuFun));
        itemFont->setPosition(ccp(-120,80));
        
        //----CCMenuItemImage
        CCMenuItemImage* imageItem = CCMenuItemImage::create("CloseNormal.png","CLoseSelected.png", this,menu_selector(HelloWorld::menuFun));
        imageItem->setPosition(ccp(-20,80));
             
        //----CCMenuItemLabel
        CCLabelTTF * lableTTF = CCLabelTTF::create("返回主菜单", "Helvetica", 20); 
        CCMenuItemLabel * labelItem =CCMenuItemLabel::create(lableTTF,this,menu_selector(HelloWorld::menuFun));
        labelItem->setPosition(ccp(80,80));

        //----CCMenuItemSprite
        CCSprite* spNor = CCSprite::create("Icon.png");
        spNor->setColor(ccc3(255, 255, 0 ));
        CCSprite* spSelected =CCSprite::create("Icon.png");
        CCMenuItemSprite* spriteItem = CCMenuItemSprite::create(spNor,spSelected, this,menu_selector(HelloWorld::menuFun));
        spriteItem->setPosition(ccp(-80,-20));
        
        
        //----CCMenuItemToggle
        CCMenuItemFont * fontItem1 = CCMenuItemFont::create("音乐开");
        CCMenuItemFont * fontItem2 = CCMenuItemFont::create("音乐关");
        CCMenuItemToggle* toggleItem = CCMenuItemToggle::createWithTarget(this,menu_selector(HelloWorld::menuFun), fontItem1,fontItem2,NULL);
        toggleItem->setPosition(ccp(20,-20));
        

    CCMenuItemAtlasFont

    CCMenuItemAtlasFont直接继承自CCMenuItemLabel,将一个CCLabelAtlas转变为一个菜单项,增加选中时的文字放大效果


        CCMenu* menu = CCMenu::create(itemFont,imageItem,labelItem,spriteItem,toggleItem,NULL);
        addChild(menu);

  • 相关阅读:
    存储过程生成POCO
    Asp.net MVC4与Razor呈现图片的扩展
    Html5中新input标签与Asp.net MVC应用程序
    HTML5上传文件显示进度
    JQuery图表插件之Flot
    用Html5与Asp.net MVC上传多个文件
    TSQL列出最后访问的存储过程
    Asp.net MVC 限制一个方法到指定的Submit按钮
    VisualStudio2012轻松把JSON数据转换到POCO的代码
    Apache Tika源码研究(三)
  • 原文地址:https://www.cnblogs.com/ADaii/p/3426259.html
Copyright © 2011-2022 走看看