SlideShare a Scribd company logo
Cocos2d-x(JS) ハンズオン #9
ラベル・テキストボックス
株式会社TKS2 清水友晶
清水 友晶
 株式会社TKS2
アプリ開発コンサル
Cocos2d-xサポート
スマホアプリ開発
TECH.C.非常勤講師
 プライベートでも
Cocos2d-xに関するゲーム開発
講演活動
執筆活動
 マイブーム: Ingress
 チラ裏開発メモ: http://tks2.net/memo
 SlideShare: http://www.slideshare.net/doraemonsss
 Facebook: http://www.facebook.com/doraemonsss
Cocos2d-x(JS) ハンズオン #09「ラベル・テキストボックス」
http://line.me/S/sticker/1085672
ラベル・テキストボックス
 ラベル
 ccui.Textクラス
(C++  ui::Textクラス)
 テキストボックス
 cc.EditBoxクラス
(C++  ui::EditBoxクラス)
ラベル
 テンプレートプロジェクト
 cc.LabelTTFクラス
 Cococs Studioで用いられているラベル
 ccui.Textクラス
ccui.Textクラス
 利用準備
 project.json
{
"project_type": "javascript”,
:
:
:
"modules" : ["cocos2d", "cocostudio"],
"jsList" : [
"src/resource.js",
"src/app.js"
]
}
ccui.Textクラス
 利用
 app.js
var helloLabel = new ccui.Text("Hello World",
"Arial",
38);
helloLabel.x = size.width / 2;
helloLabel.y = size.height / 2 + 200;
this.addChild(helloLabel, 5);
ccui.Textクラス
 実行
ccui.Textクラス
 利用
 app.js
//テキスト変更
helloLabel.setString("Hello WorldnCocos2d-
xnHogeHogeFugaFuga");
//フォントサイズ変更
helloLabel.setFontSize(48);
//フォント名変更
helloLabel.setFontName("Century");
//フォント色変更
helloLabel.setColor(cc.color.RED);
ccui.Textクラス
 利用
 app.js
//水平方向整列
helloLabel.setTextHorizontalAlignment(cc.TEXT_ALIGNMENT_CENTER
);
//垂直方向整列
helloLabel.setTextVerticalAlignment(cc.VERTICAL_TEXT_ALIGNMENT_
BOTTOM);
//シャドウ適用
helloLabel.enableShadow(cc.color.GRAY, cc.p(10, -10));
//アウトライン適用
helloLabel.enableOutline(cc.color.BLUE, 2);
テキストボックス
 Cococs Studioで用いられているテキストボックス
 ccui.TextFieldクラス
 高機能なテキストボックス
 cc.EditBoxクラス
cc.EditBoxクラス
 利用準備
 project.json
{
"project_type": "javascript”,
:
:
:
"modules" : ["cocos2d", ”extensions"],
"jsList" : [
"src/resource.js",
"src/app.js"
]
}
cc.EditBoxクラス
 利用準備
 テキストボックス枠の用意
 cocos2d-x-3.10/tests/cpp-
tests/Resources/extensions/orange_edit.png
 [Project]/res/orange_edit.png
cc.EditBoxクラス
 利用準備
 resource.js
var res = {
HelloWorld_png : "res/HelloWorld.png",
OrangeEdit_png : "res/orange_edit.png"
};
var g_resources = [];
for (var i in res) {
g_resources.push(res[i]);
}
cc.EditBoxクラス
 利用
 app.js
var size = cc.winSize;
//テキストボックス背景
var bg = new cc.Scale9Sprite(res.OrangeEdit_png);
//テキストボックス
var editbox = new cc.EditBox(cc.size(170, 50), bg);
editbox.setPosition(size.width / 2, size.height / 2);
this.addChild(editbox);
cc.EditBoxクラス
 実行
cc.EditBoxクラス
 利用
 app.js
//初期値
editbox.setString("Cocos2d-x");
//フォント色
editbox.setFontColor(cc.color.WHITE);
//プレースホルダー
editbox.setPlaceHolder("please enter word");
//プレースホルダーフォント色
editbox.setPlaceholderFontColor(cc.color.BLACK);
cc.EditBoxクラス
 利用
 app.js
//フォント
editbox.setFontName("Arial");
//プレースホルダーフォント
editbox.setPlaceholderFontName("Arial");
//パスワード設定
editbox.setInputFlag(cc.EDITBOX_INPUT_FLAG_PASSWORD);
//最大文字数
editbox.setMaxLength(10);
cc.EditBoxイベント
var HelloWorldLayer = cc.Layer.extend({
ctor:function () {
this._super();
var size = cc.winSize;
var bg = new cc.Scale9Sprite(res.OrangeEdit_png);
var editbox = new cc.EditBox(cc.size(170, 50), bg);
editbox.setPosition(size.width / 2, size.height / 2);
editbox.setDelegate(this);
this.addChild(editbox);
return true;
},
editBoxEditingDidBegin: function (editBox) {
cc.log("editBoxEditingDidBegin");
},
editBoxEditingDidEnd: function (editBox) {
cc.log("editBoxEditingDidEnd");
},
editBoxTextChanged: function (editBox, text) {
cc.log("editBoxTextChanged, text: " + text);
},
editBoxReturn: function (editBox) {
cc.log("editBoxReturn");
}
});
演習
 ゲームの会話シーンを想定し、文章が時間とともに1文
字ずつ表示される処理を作りましょう。
作業はここまで
参考になるサイト
 Cocos公式Wiki
http://www.cocos2d-
x.org/wiki/Cocos2d-JS
 Cocos2d-JS APIリファレンス
http://cocos2d-x.org/wiki/Reference
 Qiita
(tag: cocos2d-js)
https://qiita.com
おわり
 ありがとうございました

More Related Content

PPTX
Cocos2d-x(JS) ハンズオン #10「3D機能とVR機能」
PPTX
Cocos2d-x(JS)の紹介
PPTX
Cocos2d-x(JS) ハンズオン #06「3rd SDKの導入を簡単にするSDKBOX」
PPTX
Cocos2d-x(JS) ハンズオン #05「Cocos StudioとCocos2d-x (JS)との連携」
PPTX
Cocos2d-x(JS) ハンズオン #08「様々な画像描画方法」
PPTX
Cocos2d-x(JS) ハンズオン #12「Cocos2d-xとSpine」
PPTX
Cocos2d-xにおけるモバイル開発〜将来を見据えた開発〜
PPTX
Cocos2d-x(JS) ハンズオン #11「2D物理エンジン」
Cocos2d-x(JS) ハンズオン #10「3D機能とVR機能」
Cocos2d-x(JS)の紹介
Cocos2d-x(JS) ハンズオン #06「3rd SDKの導入を簡単にするSDKBOX」
Cocos2d-x(JS) ハンズオン #05「Cocos StudioとCocos2d-x (JS)との連携」
Cocos2d-x(JS) ハンズオン #08「様々な画像描画方法」
Cocos2d-x(JS) ハンズオン #12「Cocos2d-xとSpine」
Cocos2d-xにおけるモバイル開発〜将来を見据えた開発〜
Cocos2d-x(JS) ハンズオン #11「2D物理エンジン」

What's hot (20)

PDF
Cocos2d-x v3.2を利用してシューティングゲームを作ろう!
PDF
Cocos2d-x 3D Extension
PPTX
Cocos2d-x(JS) ハンズオン #02 「画像表示とアクション」
PDF
Cocos2d-x 3.2 Eclipseを利用したAndroid開発環境の構築
PPTX
Cocos2d-x(JS) ハンズオン #13「SNS対応(Twitter, Facebook)」
PPTX
Cocos2d-x(JS) ハンズオン #07「新エディタ Cocos Creator v1.0」
PPTX
Cocos2d-x(JS) ハンズオン #03「複数あるボタンの使い分け」
PPTX
Cocos2d-x(JS) ハンズオン #01 「はじめてのCocos2d-x (JS)」
PDF
cocos2d-xを利用したパズドラ風ゲームの作成
PDF
Cocos Code IDEを使ってみた
PDF
cocos2d-xとCocos Code IDE
PDF
cocos2d-xにおけるBox2Dの利用方法および便利なツール
PDF
cocos2d-x 3.0 + C++11で始めるゲーム開発超入門
PPTX
Cocos2d-x(JS) ハンズオン #04「タッチイベントの使い方」
PDF
CocosBuilderとcocos2d-x JSB
PDF
cocos2d-x公開講座 in 鹿児島
PDF
Windowsでcocos2d-x 2.1.4を使用した、Androidアプリの開発環境構築について
PDF
cocos2d-xとspine
PDF
cocos2d-xとCocosBuilderでゲームを作ってみよう
PDF
Cocos2d-x実践講座 in 鹿児島
Cocos2d-x v3.2を利用してシューティングゲームを作ろう!
Cocos2d-x 3D Extension
Cocos2d-x(JS) ハンズオン #02 「画像表示とアクション」
Cocos2d-x 3.2 Eclipseを利用したAndroid開発環境の構築
Cocos2d-x(JS) ハンズオン #13「SNS対応(Twitter, Facebook)」
Cocos2d-x(JS) ハンズオン #07「新エディタ Cocos Creator v1.0」
Cocos2d-x(JS) ハンズオン #03「複数あるボタンの使い分け」
Cocos2d-x(JS) ハンズオン #01 「はじめてのCocos2d-x (JS)」
cocos2d-xを利用したパズドラ風ゲームの作成
Cocos Code IDEを使ってみた
cocos2d-xとCocos Code IDE
cocos2d-xにおけるBox2Dの利用方法および便利なツール
cocos2d-x 3.0 + C++11で始めるゲーム開発超入門
Cocos2d-x(JS) ハンズオン #04「タッチイベントの使い方」
CocosBuilderとcocos2d-x JSB
cocos2d-x公開講座 in 鹿児島
Windowsでcocos2d-x 2.1.4を使用した、Androidアプリの開発環境構築について
cocos2d-xとspine
cocos2d-xとCocosBuilderでゲームを作ってみよう
Cocos2d-x実践講座 in 鹿児島
Ad

Viewers also liked (18)

PDF
実はかんたん!ゲームエンジンCocos2d-x入門
PDF
CocoStudioとcocos2d-xの連携2
PDF
cocos2d-xハンズオン勉強会 in 名古屋
KEY
Cocos2d xのススメ
KEY
Cocos2d-xのかんたんな紹介
KEY
Cocos2d xをさわってみよう!
PDF
Cocos2d xをさらにさわってみよう!
PDF
Cocos2d xで簡単なゲームを作ってみよう!
PDF
CocoStudioとcocos2d-xの連携
PDF
Macでcocos2d-x 3.0alphaを使用した、iOSアプリの開発環境構築について
PDF
cocos2d-x JavaScript Bindingsについて
PDF
CocoStudioの紹介
PDF
cocos2d-x開発事例勉強会
PDF
cocos2d-xのいろいろなオブジェクトの利用
PDF
20130912 macでcocos2d x 3.0alphaを使用した、クロスプラットフォーム開発環境構築について
PDF
cocos2d-xのサーバ連携について
PDF
Macでcocos2d-x 2.1.3を使用した、iOSアプリの開発環境構築について
PDF
cocos2d-xとネイティブ間の連携
実はかんたん!ゲームエンジンCocos2d-x入門
CocoStudioとcocos2d-xの連携2
cocos2d-xハンズオン勉強会 in 名古屋
Cocos2d xのススメ
Cocos2d-xのかんたんな紹介
Cocos2d xをさわってみよう!
Cocos2d xをさらにさわってみよう!
Cocos2d xで簡単なゲームを作ってみよう!
CocoStudioとcocos2d-xの連携
Macでcocos2d-x 3.0alphaを使用した、iOSアプリの開発環境構築について
cocos2d-x JavaScript Bindingsについて
CocoStudioの紹介
cocos2d-x開発事例勉強会
cocos2d-xのいろいろなオブジェクトの利用
20130912 macでcocos2d x 3.0alphaを使用した、クロスプラットフォーム開発環境構築について
cocos2d-xのサーバ連携について
Macでcocos2d-x 2.1.3を使用した、iOSアプリの開発環境構築について
cocos2d-xとネイティブ間の連携
Ad

Similar to Cocos2d-x(JS) ハンズオン #09「ラベル・テキストボックス」 (10)

PDF
Cocos2d-x勉強会 2014/10/05
PDF
Cocos2d-x公開講座 in 鹿児島
PDF
コードしか書けないエンジニアがゲームを作るには。みんなで作る:ccocos2d-xゲーム開発
PDF
Cocos2dx 8hour
PDF
cocos2d-xの開発に欠かせないCocosBuilderについて
PDF
cocos2d-xの概要とこれまでの進化・これからの展開
PDF
cocos2d-x 3.0による変更点
PDF
Macでcocos2d-x 2.1.3を使用した、Androidアプリの開発環境構築について
PDF
㉞cocos2d-xの開発環境をインストールしてみよう
PDF
Macでcocos2d-x 2.1.2を使用した、Androidアプリの開発環境構築について
Cocos2d-x勉強会 2014/10/05
Cocos2d-x公開講座 in 鹿児島
コードしか書けないエンジニアがゲームを作るには。みんなで作る:ccocos2d-xゲーム開発
Cocos2dx 8hour
cocos2d-xの開発に欠かせないCocosBuilderについて
cocos2d-xの概要とこれまでの進化・これからの展開
cocos2d-x 3.0による変更点
Macでcocos2d-x 2.1.3を使用した、Androidアプリの開発環境構築について
㉞cocos2d-xの開発環境をインストールしてみよう
Macでcocos2d-x 2.1.2を使用した、Androidアプリの開発環境構築について

More from Tomoaki Shimizu (7)

PDF
タワーオブスペルズ x cocos2d-x
PDF
cocos2d-xで利用できる暗号化
PDF
cocos2d-xにおけるマップエディタの利用
PDF
cocos2d-x 3.0 新しい物理演算クラスの利用
PDF
Macでcocos2d-x 3.0betaを使用した、クロスプラットフォーム開発環境構築について
PDF
Macでcocos2d-x 3.0alpha0を使用した、クロスプラットフォーム開発環境構築について
PDF
cocos2d-xにおけるデータ管理
タワーオブスペルズ x cocos2d-x
cocos2d-xで利用できる暗号化
cocos2d-xにおけるマップエディタの利用
cocos2d-x 3.0 新しい物理演算クラスの利用
Macでcocos2d-x 3.0betaを使用した、クロスプラットフォーム開発環境構築について
Macでcocos2d-x 3.0alpha0を使用した、クロスプラットフォーム開発環境構築について
cocos2d-xにおけるデータ管理

Cocos2d-x(JS) ハンズオン #09「ラベル・テキストボックス」