cocostudio登录界面和按钮回调的实现,JS & C++
来源:互联网 发布:055级驱逐舰 知乎 编辑:程序博客网 时间:2024/05/15 20:54
JS
1.终端创建js项目
2.用webstrom或cocos code ide打开工程文件--用webstrom添加json文件时浏览器显示ccs没有定义,不知道是为什么,所以用cocos code ide来编写代码,再用webstrom打开就可以了
3.将打包好的json文件res目录下的所有文件拷贝到项目res目录下, js加载不了csb文件 所以打包时需要设置成json
在新项目中进行资源注册(resouces) Login.json or MainScene.json
4.代码如下
button:null,
textFiled:null,
textFiled1:null
//加载json文件
var login = ccs.load(res.MainScene.json);
this.addChild(login.node);
//获取按钮和文本框 背景层tag为92 login的tag为93 logout的tag为94
//用户名面板(panel)tag95 输入框98 密码面板(panel1)tag99 输入框102
var img = ccui.helper.seekWidgetByTag(login.node,92);
button = ccui.helper.seekWidgetByTag(img,93); //获取登陆按钮
button.addTouchEventListener(this.touchEvent,this); //绑定按钮回调事件 touchEvent为定义的回调函数
var panel = ccui.helper.seekWidgetByTag(login.node,95);
textFiled = ccui.helper.seekWidgetByTag(panel,98); //获取用户名文本框
var panel1 = ccui.helper.seekWidgetByTag(login.node,99);
textFiled1 = ccui.helper.seekWidgetByTag(panel1,102); //获取密码文本框
//回调函数 写在构造函数的外面
touchEvent:function(){
switch(sender,type){
case ccui.Widget.TOUCH_BEGAN: //按下按钮
break;
case ccui.Widget.TOUCH_MOVED: //移动
break;
case ccui.Widget.TOUCH_ENDED: //点击结束
var name = textFiled.getString();
var password = textFiled1.getString();
if (name == "zhangcindy" && password == "hehe"){
alert("登录成功");
cc.director.runScene(new GameScene());
}else {
alert("用户名或密码错误");
}
break;
case ccui.Widget.CANCELED: //取消按钮 按下之后移开了 不是在按钮上结束点击的
alert("取消登录");
break;
default:
break;
}
}
-------------------------------------------------------------------------------------------------
c++加载cocostudio打包生成的csb文件
//头文件
#include "cocostudio/cocostudio.h"
#include "ui/cocosgui.h"
#include <string>
using namespace cocostudio;
using namespace ui;
//全局变量
TextField * userName;
TextField * userPass;
//加载csb文件
auto node = CSLoader::getInstance()->createNode("Login.csb");
node->setTag(1);
addChild(node);
//获取按钮
//auto不知道要生成什么类型,所以要强制转换(Button*)成Button型
auto button = (Button*)node->getChildByTag(92)->getChildByTag(93);
button->addTouchEventListener(CC_CALLBACK_2(HelloWorld::menuCloseCallback,this));//绑定事件
//获取用户名和密码的两个框
userName = (TextField*)node->getChildByTag(95)->getChildByTag(98);
userPass = (TextField*)node->getChildByTag(99)->getChildByTag(102);
//回调函数
void HelloWorld::menuCloseCallback(Ref* obj,Widget::TouchEventType t){
switch(t){
case Widget::TouchEventType:ENDED:{
if (userName == "admin" && userPass == "admin"){
MessageBox("登录成功","登录结果");
//Director::getInstance()->replaceScene(GameScene::createScene());
}else{
MessageBox("用户名或密码错误","登录结果");
}
}
}
}
- cocostudio登录界面和按钮回调的实现,JS & C++
- jsp 界面注册、登录按钮的实现
- cocos code ide--js 中获取cocostudio中按钮以及函数回调
- css和js实现弹出登录居中界面
- JS实现点击按钮复制当前界面的URL
- 登录界面的实现
- 登录界面的实现
- cocos2d-x 2.2 CocoStudio动画和界面编辑器按钮控制以及场景编辑器使用
- 注册页面和登录界面所需的JS
- CocoStudio的动画回调
- 安卓实现电脑端的QQ登录界面 自动提示+点击按钮提示输入记录
- 用JS实现系统登录页的登录和验证
- minitwitter登录界面的实现
- Android 登录界面的实现
- miniTwitter登录界面的实现
- Boostrap实现的登录界面
- Android登录界面的实现
- 手机登录界面的实现
- HTML5 Web app开发工具Kendo UI Web教程:创建自定义组件(二)
- Android Support Library 23.1
- 理解C++ dynamic_cast
- NoClassDefFoundError: org/aspectj/lang/JoinPoint
- FMDB使用细节
- cocostudio登录界面和按钮回调的实现,JS & C++
- 同一个解决方案中,项目之间无法引用
- MIL采集和实时显示
- matlab使用小波变换进行图像融合
- HTML TBLE表格重复内容列合并javascript方法
- HTML5 Web app开发工具Kendo UI Web教程:创建自定义组件(三)
- 自定义Collection View布局
- objective-c 学习第一节 HelloWorld
- ubuntu修改主机名