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. 使用node创建一个服务器,运行vue打包以后的文件

    原理就是使用node里的express框架,搭建一个服务器,然后访问dist文件夹里的文件 prod.server.js var express = require('express') var co ...

  2. k8s中新建一个namespace和harborsecret的yaml文件

    注意哟, 不同的harborsecret,在不同的namespace中,是不共用的. 也就是说,如果在default名字空间中,创建了一个docker login secret, 在其它名字空间中,是 ...

  3. AnyRobot

    AnyRobot http://www.sohu.com/a/151456051_656915 https://www.sohu.com/a/238065475_656915 http://www.d ...

  4. Codeforces 280C Game on Tree 期望

    Game on Tree 这种题好像在wannfly训练营讲过, 我怎么又不会写啦, 我好菜啊啊啊. 我们按每个点算贡献, 一个点有贡献就说明它是被选中的点, 那么它被选中的概率就为1 / depth ...

  5. HttpClient-----待补充

    1.简介 HTTP 协议可能是现在 Internet 上使用得最多.最重要的协议了,越来越多的 Java 应用程序需要直接通过 HTTP 协议来访问网络资源.虽然在 JDK 的 java.net 包中 ...

  6. 使用<c:set>标签配置项目路径

    写在前面的话: 在java项目中,路径的配置是一项最基础也是最必不可少的工作,最初我们配置路径是根据<%=request.getContextPath()%>这个java代码块进行配置的, ...

  7. git初级浅入其常用操作

    1. git init 我们从初始化一个仓库开始,通过此命令可以初始化一个仓库 git init 首先我们在当前目录下创建一个目录pratice和一个文件test.js mkdir pratice c ...

  8. .NET工作准备--01前言

    01应聘须知(已过时) -1.了解软件开发大环境.-2.准备简历:不宜超过一页,永远准备中文,模板. -3.渠道:3大网站,中华英才,前程无忧(51job最给力),智联招聘.现在还有猎聘网和100程序 ...

  9. 玩转SpringCloud(F版本) 二.服务消费者(1)ribbon+restTemplate

    上一篇博客有人问我,Springcloud系列会不会连载 ,大家可以看到我的标签分类里已经开设了SpringCloud专题,所以当然会连载啦,本人最近也是买了本书在学习SpringCloud微服务框架 ...

  10. 隐马尔科夫模型(HMM)与词性标注问题

    一.马尔科夫过程: 在已知目前状态(现在)的条件下,它未来的演变(将来)不依赖于它以往的演变 (过去 ).例如森林中动物头数的变化构成——马尔可夫过程.在现实世界中,有很多过程都是马尔可夫过程,如液体 ...