现在的位置: 首页 > 综合 > 正文

cocos2dx之创建一个菜单按钮

2013年07月12日 ⁄ 综合 ⁄ 共 1502字 ⁄ 字号 评论关闭

1,在没有图片资源的情况下,如果想要创建一个只有字体的Menu按钮,看如下代码的创建步骤:

        CCLabelTTF *label = CCLabelTTF::create("Exit",  "Arial", 20); // create a exit botton
        CCMenuItemLabel *exit_game = CCMenuItemLabel::create(label, this, menu_selector(HelloWorld::menuExitGame) );
        exit_game->setPosition(CCPointZero);
        exit_game->setPosition(size.width -40, size.height - 40); // add an exit  button

               

CCMenu* pMenu = CCMenu::create( exit_game,NULL); //最后添加进去,就创建成功了

2,我需要用图片资源来创建自己风格的Menu菜单,代码如下:

 CCMenuItemImage *pCloseItem = CCMenuItemImage::create(
            "NextLayeNormal.png", //png.jpg等图片格式都是可以的
            "NextLayeSelected.png",
            this,
            menu_selector(HelloWorld::menuCallback));
        CC_BREAK_IF(! pCloseItem);
        pCloseItem->setPosition(ccp(CCDirector::sharedDirector()->getWinSize().width - 70, 30));

CCMenu* pMenu = CCMenu::create( pCloseItem ,NULL); //最后添加进去,就创建成功了

以上是两种创建menu菜单的方式,还有另外几种方式,CCLabelAtlas,CCMenuItemFont

    CCLabelAtlas *plabelAtals = CCLabelAtlas::create("0123456789", "labelatlas.png", 16, 24, '.');
    plabelAtals->setColor(ccc3(250, 100, 0));
    CCMenuItemLabel *atalsMenu = CCMenuItemLabel::create(plabelAtals, this, menu_selector(MenuDemo::font_callBack));
    atalsMenu->setPosition(ccp(size.width / 3, size.height / 2));
    CCMenu *menu = CCMenu::create(atalsMenu, NULL);
    menu->setPosition(CCPointZero);
   

    CCMenuItemFont::setFontName("Marker Felt");
    CCMenuItemFont *menufont = CCMenuItemFont::create("My test Menu", this, menu_selector(MenuDemo::menuCallbackPriorityTest));
    menufont->setColor(ccc3(250, 100, 0));
    menufont->setPosition(ccp(size.width - 200, size.height / 2));
    menu->setPosition(CCPointZero);
    menu->addChild(menufont, 1);


     this->addChild(menu, 1);

抱歉!评论已关闭.