from://http://blog.linguofeng.com/archive/2012/11/14/cocos2d-x-CCMenu.html

Cocos2d-x之CCMenu

Cocos2dx的菜单


一、CCMenuItemSprite 精灵按钮

CCSprite* normal =CCSprite::spriteWithFile("默认状态的图片");CCSprite* selected =CCSprite::spriteWithFile("选中状态的图片");CCSprite* disabled =CCSprite::spriteWithFile("禁用状态的图片");CCMenuItemSprite* item =CCMenuItemSprite::itemFromNormalSprite(normal, selected, disabled,this, menu_selector(Test::callback));// itemFromNormalSprite(normal, selected, disabled);// itemFromNormalSprite(normal, selected, this, menu_selector(Test::callback));// itemFromNormalSprite(normal, selected);
item->setIsEnabled(false);// 是否可用,默认true

二、CCMenuItemImage 图片按钮

CCMenuItemImage* item =CCMenuItemImage::itemFromNormalImage("默认状态","选中状态",this, menu_selector(Test::callback));// itemFromNormalImage("默认状态", "选中状态");// itemFromNormalImage("默认", "选中", "禁用", this, menu_selector(Test::callback));// itemFromNormalImage("默认", "选中", "禁用");

三、CCMenuItemLabel label按钮

// 支持CCLabelAtlas、CCLabelBMFontCCLabelAtlas* label =CCLabelAtlas::labelWithString("123","nums.png",24,30,'');CCMenuItemLabel* item =CCMenuItemLabel::itemWithLabel(label,this, menu_selector(Test::callback));// itemWithLabel(label);
item->setDisabledColor(ccc3(255,255,255));
item->setColor(ccc3(0,0,0));

四、CCMenuItemFont 字体按钮

CCMenuItemFont* item =CCMenuItemFont::itemFromString("文本",this, menu_selector(Test::callback));// itemFromString("文本");
item->setFontSizeObj(24);
item->setFontName("Monaco");// 全局字体与大小CCMenuItemFont::setFontSize("全局字体大小");CCMenuItemFont::setFontName("全局字体名称");

五、CCMenuItemToggle 开关式按钮

CCMenuItemToggle* item =CCMenuItemToggle::itemWithTarget(this,
menu_selector(Test::callback),CCMenuItemFont::itemFromString("On"),CCMenuItemFont::itemFromString("Off"),
NULL);
item->getSubItems()->addObject(CCMenuItemFont::itemFromString("Other"));
item->setSelectedIndex(2);

六、CCMenu

CCMenu* menu =CCMenu::menuWithItems(item1, item2, NULL);
menu->alignItemsHorizontally();// 垂直对齐
menu->alignItemsVertically();// 水平对象
menu->alignItemsInColumns(2,1, NULL);// 两行,两列,一列

七、callback

Test::callback(CCObject* sender){}

Cocos2d-x之CCMenu的更多相关文章

  1. cocos2d在CCScrollView中嵌套CCMenu列表

    在cocos2d中,CCMenuItem经常被当做按钮使用.在有许多条目需要逐行显示,并且点击每个条目都触发对应的事件的需求下,最容易想到的是用CCScrollView嵌套CCMenu. 但默认情况下 ...

  2. cocos2D(八)---- CCMenu && CCMenuItem

    些菜单项让用户開始游戏.暂停\继续游戏.打开\关闭音乐或者是返回到上一个界面,比方以下两张图中用红色线框标记的菜单项     我们能够使用CCMenu和CCMenuItem实现上述的菜单功能,CCMe ...

  3. 学生信息管理系统(cocos2d引擎)——数据结构课程设计

    老师手把手教了两天半,看了一下模式,加了几个功能就大功告成了!!! 给我的感想就是全都是指针! 添加图片精灵: CCSprite*  spBG = CCSprite::create("&qu ...

  4. cocos2d学习笔记

    doxygen工具 生成cocos2d的api文档 位图字体编辑工具 Glyph Designer http://www.71squared.com/glyphdesigner  收费的 CCLabl ...

  5. cocos2d ccmenulabel

    // // TestMenu.hpp // mario // // Created by sun on 15/12/22. // // #ifndef TestMenu_hpp #define Tes ...

  6. cocos2d ccitemimage

    #ifndef __HELLOWORLD_SCENE_H__ #define __HELLOWORLD_SCENE_H__ #include "cocos2d.h" class H ...

  7. Cocos2d-x学习笔记(10)(CCMenu菜单)

    1.CCMenu创建方式 CCMenu* menu = CCMenu::create(cocos2d::CCMenuItem* item,--)參数为CCMenuItem菜单项的对象可变參数列表 2. ...

  8. cocos2d的框架思路

    这是我第一次写cocos的框架思路哈,虽然只是写完了一个程序,按理来说应该再多写一些,多积累一些经验了再来写这个框架的构成,但是我觉得还是把我这次写代码的所有想法先记下来哈,等到以后继续写cocos的 ...

  9. Cocos2d—X游戏开发之CCTableView详解(十一)

    本来很早就想写关于CCTableView的文章,但是在基本功能实现之后呢,项目需求增加导致对这个控件的研究必须更加深入一点. 好的,现在开始介绍一下这个控件,在Cocos2d—X引擎中,这是一个仿制i ...

  10. 使用cocos2d 2.1制作一条河游戏(4): 主要的游戏逻辑BaseLayer设计

    前段时间一直忙着.没有时间更新博客.今天,仍然需要一段时间才能实现对游戏的一小部分,最后打动他. BaseLayer.h: #import <GameKit/GameKit.h> #imp ...

随机推荐

  1. Java @Override 注解

    @Override注解,不是关键字,但可以当关键字使用,可以选择添加这个注解,在你不留心重载而并非复写了该方法时,编译器就会产生一条错误:The method doh(Milhouse) of typ ...

  2. Oracle学习笔记:a inner join b与from a,b where a.x=b.x的差异

    近期,在使用Oracle的过程中,由以下两段代码的执行引发的思考,到底 select * from a,b where a.id = b.id 和 select * from a inner join ...

  3. csu 1930 roads(DFS)

    Description Once upon a time there was a strange kingdom, the kingdom had n cities which were connec ...

  4. 【OpenCV for Android】Android Studio JNI和NDK配置及采坑记录

    在配置好Android studio的OpenCV环境后,我们就可以通过Java代码调用OpenCV的API了,但是在通常情况下,用Java代码编写图像处理算法的运行效率是没有C++代码高的,在应用层 ...

  5. HTTP 和 HTTPS 的异同

    什么是 HTTPS? HTTPS (基于安全套接字层的超文本传输协议 或者是 HTTP over SSL) 是一个 Netscape 开发的 Web 协议. 你也可以说:HTTPS = HTTP + ...

  6. 使用Ocelot构建GateWay

    添加Nuget包:Ocelot 添加配置文件Ocelot.json 具体配置可以看另一篇Ocelot配置 Json配置文件主要包含两个根节点: ReRoutes:路由重定向配置 都是数组结构 可以配置 ...

  7. MaximumClique HDU1530

    最大团问题入门题 最基础的方法是dfs 参考: 首先,我们先得到后几个点组成的最大团到底是多大,(最开始的时候肯定是最后一个点单独构成一个最大团,点数为1)然后我们再 DFS: 初始化: 从一个点 u ...

  8. centos 6.x x86 源码安装git-2.3.0

    (1) 添加rpmforge源 wget http://pkgs.repoforge.org/rpmforge-release/rpmforge-release-0.5.3-1.el6.rf.i686 ...

  9. jquery.validate.js自定义表单验证

    $(document).ready(function() { //在下列位置输入页面加载的逻辑代码 $("#inputForm").validate({ rules: { seq: ...

  10. Oracle - 数据库巡检脚本

    分享一个oracle数据库巡检脚本,欢迎大家使用,希望大家在用的过程中发现脚本中的错误并提出改进意见. -- 数据库巡检脚本 -- 版本号2.1 -- 该脚本仅对数据库的做一个初步的巡检,具体的优化方 ...