1. 程式人生 > >TextField和EditBox的 區別

TextField和EditBox的 區別

   TextField和EditBox的 區別

TextField:

先新增標頭檔案:

#include "cocostudio/CocoStudio.h"

#include "ui/CocosGUI.h"

USING_NS_CC;

using namespace cocostudio::timeline;

using namespace cocos2d::ui;

 

先從cocosstdio中新增一個TextField然後匯出csb檔案,然後從檔案中找出來。

 

auto rootNode = CSLoader::createNode("MainScene.csb");

 

    addChild(rootNode);

 

//**********************************************************************

auto s = dynamic_cast<Sprite*>(rootNode->getChildByName("Default"));

 

s->setVisible(false);

 

text = dynamic_cast<TextField*>(rootNode->getChildByName("TextField_2"));

 

text->addEventListener(CC_CALLBACK_2(HelloWorld::textFieldEvent, this));

 

回撥函式要有引數:

void HelloWorld::textFieldEvent(Ref * pSender, TextField

::EventType type)

{

log("別摸我");

}

這種形式的編輯框,你滑鼠點選上去是沒有任何反應的,但是你點選之後再鍵盤輸入的話。是可以輸入的,不要以為沒有反應,開始被欺騙了半天。

           

 

      

 

 

 

EditBox:

這種編輯框就是可以彈出輸入框的那一種,比較容易辨別,使用方法也很簡單。

cocos2d::Size size;// = Director::getInstance()->getWinSize();

size.width = 1000;

size.height = 500;

EditBox* stg = EditBox::create(size / 10, "frame.png", TextureResType::LOCAL);

stg->setPosition(Point(550,50));

addChild(stg);

 

             

 

這種也是比較好用的一種編輯框,還是九宮格的,再這裡先記錄一下他們二個的區別,防止以後找不到方法,網上亂找。