cocos2d-x 2.2.3 之菜单分析(1)
TextEdit-Menu
CCtextFieldTTF cocos2d – x 中提供的 bool T04ZORDER::init()
{
if (!CCLayer::init())
{
return false;
}
CCSize winSize = CCDirector::sharedDirector()->getWinSize();
CCTextFieldTTF * textField;
textField = CCTextFieldTTF::textFieldWithPlaceHolder("Please input your name :", "Arail", 36);
textField->setSecureTextEntry(true);//输入password的时候
CCScale9Sprite *bg = CCScale9Sprite::create();
textField->addChild(bg);//把bg加入到textField里面
bg->setAnchorPoint(ccp(0, 0));
bg->setPosition(ccp(0, 0));
bg->setContentSize(textField->boundingBox().sizes);//设置大小和textField大小一样
bg->setZOrder(-1);// 使bg线绚烂
return true;
}
/*
void dispatchKeyboardWillShow(CCIMEKeyboardNotificationInfo& info);//软键盘还没有出来的时候
void dispatchKeyboardDidShow(CCIMEKeyboardNotificationInfo& info);//软键盘已经出来了
void dispatchKeyboardWillHide(CCIMEKeyboardNotificationInfo& info);//软键盘即将要隐藏
void dispatchKeyboardDidHide(CCIMEKeyboardNotificationInfo& info);//软键盘已经隐藏
*/ CCEditBox
CCEditBox sextennsions 中提供的
CCScale9Sprite *bg = CCScale9Sprite::create("a.png");
CCEditBox *EditBox = CCEditBox::create(CCSize(300, 100), bg);//创建输入框。须要參数:巨型,9宫格背景
addChild(EditBox);
EditBox->setPosition(ccp(winSize.width / 2, winSize.height / 2));
//设置编辑框内的文字 // box->setText(“xcc”); //设置位置 EditBox->setPosition(ccp(200, 200)); //获取编辑框内的文字 //CCLOG(“Text:%s”,box->getText()); //box->setDelegate(this); //设置文本的颜色 EditBox->setFontColor(ccc3(255, 0, 0)); //当编辑框中没有不论什么字符的提示 EditBox->setPlaceHolder("please insert ur username:"); //最大输入文本长度 EditBox->setMaxLength(15); EditBox->setInputMode(kEditBoxInputModeAny); //设置输入键盘模式 // kEditBoxInputModeAny: 开启不论什么文本的输入键盘,包含换行 // kEditBoxInputModeEmailAddr: 开启 邮件地址 输入类型键盘 // kEditBoxInputModeNumeric: 开启 数字符号 输入类型键盘 // kEditBoxInputModePhoneNumber: 开启 电话号码 输入类型键盘 // kEditBoxInputModeUrl: 开启 URL 输入类型键盘 // kEditBoxInputModeDecimal: 开启 数字 输入类型键盘,同意小数点 // kEditBoxInputModeSingleLine: 开启不论什么文本的输入键盘,不包含换行 EditBox->setReturnType(kKeyboardReturnTypeDone); // kKeyboardReturnTypeDefault: 默认使用键盘return 类型 // kKeyboardReturnTypeDone: 默认使用键盘return类型为“Done”字样 // kKeyboardReturnTypeSend: 默认使用键盘return类型为“Send”字样 // kKeyboardReturnTypeSearch: 默认使用键盘return类型为“Search”字样 // kKeyboardReturnTypeGo: 默认使用键盘return类型为“Go”字样 //设置该属性输入password时为替代符 //box->setInputFlag(kEditBoxInputFlagPassword); this->addChild(EditBox, 5); CCMenuItemFont
CCMenu *menu = CCMenu::create();
addChild(menu);
//默认位置在中间
CCMenuItemFont *item = CCMenuItemFont::create("www");
menu->addChild(item);
item->setTarget(this, menu_selector(T04ZORDER::aa));//设置响应函数 item->setPosition(ccp(100,200));//设置坐标
item->setTag(1);//设置标签 CCMenuItem
CCMenu *menu = CCMenu::create();
addChild(menu);
//默认位置在中间
CCMenuItemFont *item = CCMenuItemFont::create("www");
menu->addChild(item);
item->setTarget(this, menu_selector(T04ZORDER::aa));//设置响应函数 item->setPosition(ccp(100,200));//设置坐标
item->setTag(1);//设置标签 CCMenuItemFont *item1= CCMenuItemFont::create("www");
CCMenuItemAtlasFont *item2 = CCMenuItemAtlasFont::create("123456", "abc.png", "24", "32", '0');
// 创建一个CCLabelAtlas标签(Atlas通常是指图片集合)。參数:内容(图片资源中存在。假设不存在。不显示)。图片,宽,高 CCMenuItemImage* item2 = CCMenuItemImage::create("SendScoreButton.png", "SendScoreButtonPressed.png", this, menu_selector(MenuTestLayer::menuCallback2));
// 创建一个CCMenuItem标签 第一个參数的显示的图片,第二个參数是被点击的图片,第三个參数是被点击和调用menuCallback2函数 CCLabelAtlas* labelAtlas = CCLabelAtlas::create("0123456789", "fonts/labelatlas.png", 16, 24, '.');
// 创建一个CCLabelAtlas标签(Atlas通常是指图片集合)。參数:内容(图片资源中存在。假设不存在。不显示),图片,宽,高
CCMenuItemLabel* item3 = CCMenuItemLabel::create(labelAtlas, this, menu_selector(MenuTestLayer::menuCallbackDisabled));
//创建一个CCMenuItemLebel标签 CCMenuItemSprite* item1 = CCMenuItemSprite::create(CCSprite::create("a.png"), CCSprite::create("a.png"), CCSprite::create("a.png"), this, menu_selector(MenuTestLayer::menuCallback));
//创建一个CCMenuItemSprite,參数:加入三种状态CCSprite,加入item1的节点,注冊返回监听 // 创建一个CCMenuItemToggle
CCMenuItem *subitem1 = CCMenuItemFont::create("no");
CCMenuItem *subitem2 = CCMenuItemFont::create("yes");
CCMenuItemToggle *itemToggle = CCMenuItemToggle::create(subitem1);
itemToggle->addChild(subitem2);
cocos2d-x 2.2.3 之菜单分析(1)的更多相关文章
- javascript右键菜单分析
右键菜单 思路 1.遮蔽原来的默认右键菜单 2.新建右键菜单跟随鼠标移动 3.注意边界处的位置变化 4.自定义右键内容的具体效果 具体 这样的事件涉及到有关contextmenu事件,阻止默认事件,获 ...
- Cocos2d-x学习笔记(17)(TestCpp源代码分析-1)
TestCpp源代码基于Cocos2d-x2.1.3版本号,部分资源来自红孩儿的游戏编程之路CSDN博客地址http://blog.csdn.net/honghaier/article/details ...
- J2EE 第二阶段项目之分析业务
这次的项目为: 两金申报系统.主要是关系的练习,CRUD,统计. 这个项目没有pdf图,只有一本使用手册.(在我们出去工作后,做项目的时候,也可能只有项目需求的资料). 分析:每一张表都有分页,查看 ...
- Cocos2D v2.0至v3.x简洁转换指南(三)
Cocos2D 3.3中的注意事项 如果你在使用Cocos2D 3.3+(是SpriteBuilder 1.3+的一部分)你将不得不替分别的换所有存在的UITouch和UITouchEvent为CCT ...
- mat 使用 分析 oom 使用 Eclipse Memory Analyzer 进行堆转储文件分析
概述 对于大型 JAVA 应用程序来说,再精细的测试也难以堵住所有的漏洞,即便我们在测试阶段进行了大量卓有成效的工作,很多问题还是会在生产环境下暴露出来,并且很难在测试环境中进行重现.JVM 能够记录 ...
- [Android Memory] 使用 Eclipse Memory Analyzer 进行堆转储文件分析
转载地址:http://www.ibm.com/developerworks/cn/opensource/os-cn-ecl-ma/index.html Eclipse Memory Analyzer ...
- MAT内存分析
先下载 http://www.eclipse.org/mat/downloads.php 配置环境参数 分析一个堆转储文件需要消耗很多的堆空间,为了保证分析的效率和性能,在有条件的情况下,建议分配给 ...
- 基于CefSharp开发(五)浏览器菜单样式
一.菜单分析 上图为Edge浏览器现有的菜单内容,菜单中即有子菜单也有组合菜单. 本章节将开发浏览器菜单样式,菜单部分功能将后期进行处理. 二.创建菜单用户控件 新建用户控件命名为WebMenuUc, ...
- 基于CefSharp开发(七)浏览器收藏夹菜单
一.Edge收藏夹菜单分析 如下图所示为Edge收藏夹菜单, 点击收藏夹菜单按钮(红框部分)弹出收藏夹菜单窗体,窗体中包含工具栏(绿框部分)和树型菜单(黄框部分) 工具栏按钮功能分别为添加当前网页到根 ...
随机推荐
- Android - Layout时发生'Unfortunately xxx has stopped'
概述 我在进行LinearLayout和TableLayout的嵌套布局的时候,发生题的错误.如下布局xml代码: <LinearLayout xmlns:android="http: ...
- iOS 中的传值方式
一. 属性传值 将A页面所拥有的信息通过属性传递到B页面使用 很常用的传值,也很方便,但是要拿到类的属性.例如: B页面定义了一个naviTitle属性,在A页面中直接通过属性赋值将A页面中的值传 ...
- 64位操作系统下IIS报“试图加载格式不正确的程序”错误
缘由:在64位操作系统下IIS发布32位的项目,报“项目依赖的dll无法读取,试图加载格式不正确的程序”错误. 原因:程序集之间的通讯要么全是64位环境下的,要么全是32位环境下的.不能混编访问.不然 ...
- [转]C++基本功和 Design Pattern系列 ctor & dtor
今天Aear讲的是class.ctor 也就是constructor, 和 class.dtor, destructor. 相信大家都知道constructor 和 destructor是做什么用的 ...
- 你好,C++(7)第三部分 C++世界众生相 3.2.1 变量的定义与初始化
第3部分 C++世界众生相 在听过了HelloWorld.exe的自我介绍,完成了与C++世界的第一次亲密接触后,大家是不是都急不可待地想要一试身手,开始编写C++程序了呢?程序的两大任务是描述数据和 ...
- phpcms v9自定义表单提交后返回上一页实现方法
PHPcms v9中提交自定义表单后默认都是回到首页的,是不是感觉很不爽! 接下来,就说下phpcms v9自定义表单提交后返回上一页实现方法. 1.找到这个文件 phpcms\modules\for ...
- C++的类为什么要用指针
这个问题原来是这样的: C++的对象和C#不同,C++的对象是放在栈区的,C#的对象是引用类型. 这就意味着,C++进行类型转换的时候,由于调用了复制构造函数,其转换后,对象会丢弃一部分信息. 派生类 ...
- ASP.Net string 类的扩展方法 [转]
string 类的扩展方法列表(基本相同于 IEnumerable<T> 接口的成员列表): Aggregate<> //累加 All<> / ...
- Java中抽象类和接口的用法和区别
一.抽象类 1.抽象类 包含一个抽象方法的类就是抽象类 2.抽象方法 声明而未被实现的方法,抽象方法必须使用abstract关键词字声明 public abstract class People { ...
- VC的UNICODE 编程
简介 如果你编写的程序是针对非英语国家的用户,如中国.日本.东欧和中东地区,那么你一定要熟悉 UNICODE 字符集.尤其是用 Visual C++/MFC 编写针对上述国家和地区的用户的程序时,如果 ...