Cocos2d-x中编辑框CCEditBox的使用

//设置背景图片
//ps:CCScale9Sprite对象,是一种CCSprite对象的变形,它的用法和CCSprite一样,不同点是,CCScale9Sprite对象有个特性就是缩放贴图时可以尽量不失帧。
CCScale9Sprite *pBg = CCScale9Sprite::create("extensions/orange_edit.png");

//创建编辑框
CCEditBox *pEditBox = CCEditBox::create(CCSizeMake(200, 40), pBg);
pEditBox->setPosition(ccp(100, 100));
addChild(pEditBox);

/*
编辑框的一些函数
setText("字符串");         //设置文本
setFontColor(color);       //设置文本颜色
setPlaceHolder("文本");    //设置预设文本
getPlaceHolder(对象);      //获得预设文本
setMaxLength(对象);        //设置最大长度
getMaxLength(对象);        //获得最大长度
setInputMode();            //设置键盘模式
setInputFlag();           //设置文本类型
setReturnType();          //设置键盘return类型

1.setInputMode
这里cocos2dx给我们提供了很多键盘的模式,我们来一一了解下。
kEditBoxInputModeAny                    //文本键盘(含换行)
kEditBoxInputModeEmailAddr        //邮件类键盘
kEditBoxInputModeNumeric            //数字符号键盘
kEditBoxInputModePhoneNumber //电话号码键盘
kEditBoxInputModeUrl                     //URL键盘
kEditBoxInputModeDecimal            //输入键盘(含小数点)
kEditBoxInputModeSingleLine        //文本键盘(不含换行)


2.setInputFlag
这里cocos2dx给我们提供了5种文本类型。
kEditBoxInputFlagPassword                          //密码形式
kEditBoxInputFlagSensitive                            //敏感数据输入
kEditBoxInputFlagInitialCapsWord                //每个单词首字符大写,并有提示
kEditBoxInputFlagInitialCapsSentence         //第一句首字符大写,并有提示
kEditBoxInputFlagInitialCapsAllCharacters  //自动大写


3.setReturnType
这里cocos2dx给我们提供了5种键盘返回类型。
kKeyboardReturnTypeDefault        //默认类型
kKeyboardReturnTypeDone           //Done字样
kKeyboardReturnTypeSend           //Send字样
kKeyboardReturnTypeSearch        //Search字样
kKeyboardReturnTypeGo               //Go字样
*/

//好了,光说不练可不行,我们来试一下做个登录界面吧。


//1.和CCtextFieldTTF一样,我们需要一个监控事件来操作。让我们的类继承CCEditBoxDelegate接口。



//开始编辑

virtual void editBoxEditingDidBegin(cocos2d::extension::CCEditBox * myeditbox);

//结束编辑

virtual void editBoxEditingDidEnd(cocos2d::extension::CCEditBox * myeditbox);

//编辑框文字改变

virtual void editBoxTextChanged(cocos2d::extension::CCEditBox * myeditbox,const std::string&text);

//触发return后的回调函数

virtual void editBoxReturn(cocos2d::extension::CCEditBox * myeditbox);



2.然后我们去cpp文件修改修改


CCScale9Sprite * scale9one = CCScale9Sprite::create("boxbg.png");

CCEditBox * myeditbox1=CCEditBox::create(CCSizeMake(200,40),scale9one);

myeditbox1->setInputMode(kEditBoxInputModeSingleLine);

myeditbox1->setPosition(ccp(mysize.width/2,mysize.height-100));

this->addChild(myeditbox1);

myeditbox1->setDelegate(this);

CCEditBox * myeditbox2=CCEditBox::create(CCSizeMake(200,40),scale9one);

myeditbox2->setInputMode(kEditBoxInputModeSingleLine);

myeditbox2->setInputFlag(kEditBoxInputFlagPassword);

myeditbox2->setPosition(ccp(mysize.width/2,mysize.height-200));

this->addChild(myeditbox2);

myeditbox2->setDelegate(this);

【转载】
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值