facebook twitter hatena line email

Cocos2dx/EditBox

提供: 初心者エンジニアの簡易メモ
2017年4月11日 (火) 16:35時点におけるAdmin (トーク | 投稿記録)による版

移動: 案内検索

EditBoxとは

入力欄のこと

サンプル

HelloworldScene.h

#include "ui/CocosGUI.h"
class HelloWorld : public cocos2d::Layer, cocos2d::ui::EditBoxDelegate
{
public:
   static cocos2d::Scene* createScene();
   virtual bool init();
   CREATE_FUNC(HelloWorld);
private:
   virtual void editBoxEditingDidBegin(cocos2d::ui::EditBox* editBox);
   virtual void editBoxEditingDidEnd(cocos2d::ui::EditBox* editBox);
   virtual void editBoxTextChanged(cocos2d::ui::EditBox* editBox, const std::string& text);
   virtual void editBoxReturn(cocos2d::ui::EditBox* editBox);
};

HelloworldScene.cpp

USING_NS_CC;
using namespace ui;
// 略
bool HelloWorld::init()
{
// 略
    cocos2d::ui::EditBox* _editPassword = ui::EditBox::create(editBoxSize, "extensions/orange_edit.png");
    _editPassword->setPosition(Vec2(visibleOrigin.x+visibleSize.width/2, visibleOrigin.y+visibleSize.height/2));
    _editPassword->setFont("American Typewriter", 80);
    _editPassword->setFontColor(Color3B::GREEN);
    _editPassword->setPlaceHolder("Password:");
    _editPassword->setMaxLength(6);
    _editPassword->setInputFlag(ui::EditBox::InputFlag::PASSWORD);
    _editPassword->setInputMode(ui::EditBox::InputMode::SINGLE_LINE);
    _editPassword->setDelegate(this);
    addChild(_editPassword);
    return true;
}
void HelloWorld::editBoxEditingDidBegin(EditBox *editBox) {
}
void HelloWorld::editBoxEditingDidEnd(EditBox *editBox) {
}
void HelloWorld::editBoxTextChanged(EditBox *editBox, const std::string& text) {
}
void HelloWorld::editBoxReturn(EditBox *editBox) {
}

Extensionは非推奨

cocos2d-x ui::EditBoxを使う

http://falstar.hateblo.jp/entry/2016/07/18/213355