cocostudio——js 3 final控件事件
近期试用了下cocos ide,然后引擎用的cocos2dx js 3 final,须要build runtime一下,以下是cocos studio相关的一些事件:
加入事件侦听:
// button
var root = ccs.uiReader.widgetFromJsonFile("res/UIButton_Editor/UIButton_Editor_1.json");
this.addChild(root); var back_label = ccui.helper.seekWidgetByName(root, "back");
back_label.addTouchEventListener(this.backEvent,this); var button = ccui.helper.seekWidgetByName(root, "Button_123");
button.addTouchEventListener(this.touchEvent,this); var title_button = ccui.helper.seekWidgetByName(root, "Button_126");
title_button.addTouchEventListener(this.touchEvent,this); var scale9_button = ccui.helper.seekWidgetByName(root, "Button_129");
scale9_button.addTouchEventListener(this.touchEvent,this); // check box
var root = ccs.uiReader.widgetFromJsonFile("res/UICheckBox_Editor/ui_checkbox_editor_1.json");
this.addChild(root); var checkbox = ccui.helper.seekWidgetByName(root, "CheckBox_540");
cc.log(checkbox.addEventListener);
checkbox.addEventListener(this.selectedStateEvent,this); // list view
var LISTVIEW_RES = [
"res/UIListView_Editor/UIListView_Vertical_Editor/ui_listview_editor_1.json",
"res/UIListView_Editor/UIListView_Horizontal_Editor/ui_listview_horizontal_editor_1.json"
];
var root = ccs.uiReader.widgetFromJsonFile(LISTVIEW_RES[0]);
this.addChild(root); var listView = ccui.helper.seekWidgetByName(root, "ListView_1214");
listView.addEventListener(this.selectedItemEvent,this); // page view
var root = ccs.uiReader.widgetFromJsonFile("res/UIPageView_Editor/ui_pageview_editor_1.json");
this.addChild(root); var pageView =ccui.helper.seekWidgetByName(root, "PageView_1269");
pageView.addEventListener(this.pageViewEvent, this); // RichText
var richText = ccui.RichText.create();
richText.ignoreContentAdaptWithSize(false);
richText.setContentSize(cc.size(120, 100)); var re1 = ccui.RichElementText.create(1, cc.color.WHITE, 255, "This color is white. ", "Helvetica", 10);
var re2 = ccui.RichElementText.create(2, cc.color.YELLOW, 255, "And this is yellow. ", "Helvetica", 10);
var re3 = ccui.RichElementText.create(3, cc.color.BLUE, 255, "This one is blue. ", "Helvetica", 10);
var re4 = ccui.RichElementText.create(4, cc.color.GREEN, 255, "And green. ", "Helvetica", 10);
var re5 = ccui.RichElementText.create(5, cc.color.RED, 255, "Last one is red ", "Helvetica", 10); var re6 = ccui.RichElementText.create(7, cc.color.ORANGE, 255, "Have fun!! ", "Helvetica", 10);
richText.pushBackElement(re1);
richText.insertElement(re2, 1);
richText.pushBackElement(re3);
richText.pushBackElement(re4);
richText.pushBackElement(re5);
richText.pushBackElement(re6); richText.setPosition(cc.p(1280 / 2, 720 / 2));
this.addChild(richText); // slider
var root = ccs.uiReader.widgetFromJsonFile("res/UISlider_Editor/ui_slider_editor_1.json");
this.addChild(root); var slider = ccui.helper.seekWidgetByName(root, "Slider_738");
slider.addEventListener(this.sliderEvent,this); var scale9_slider = ccui.helper.seekWidgetByName(root, "Slider_740");
scale9_slider.addEventListener(this.sliderEvent,this); // text field
var root = ccs.uiReader.widgetFromJsonFile("res/UITextField_Editor/ui_textfield_editor_1.json");
this.addChild(root); var textField_normal = ccui.helper.seekWidgetByName(root, "TextField_1109");
textField_normal.addEventListener(this.textFieldEvent,this); var textField_max_character = ccui.helper.seekWidgetByName(root, "TextField_1110");
textField_max_character.addEventListener(this.textFieldEvent,this); var textField_password = ccui.helper.seekWidgetByName(root, "TextField_1107");
textField_password.addEventListener(this.textFieldEvent,this);
各个事件回调:
// widget
touchEvent: function (sender, type) {
switch (type) {
case ccui.Widget.TOUCH_BEGAN:
cc.log("Touch Down");
break; case ccui.Widget.TOUCH_MOVED:
cc.log("Touch Move");
break; case ccui.Widget.TOUCH_ENDED:
cc.log("Touch Up");
break; case ccui.Widget.TOUCH_CANCELED:
cc.log("Touch Cancelled");
break; default:
break;
}
}, // check box
selectedStateEvent: function (sender, type) {
switch (type) {
case ccui.CheckBox.EVENT_SELECTED:
cc.log("Selected");
break;
case ccui.CheckBox.EVENT_UNSELECTED:
cc.log("Unselected");
break; default:
break;
}
}, // list view
selectedItemEvent: function (sender, type) {
switch (type) {
case ccui.ListView.EVENT_SELECTED_ITEM:
var listViewEx = sender;
cc.log("select child index = " + listViewEx.getCurSelectedIndex());
break; default:
break;
}
}, // page view
pageViewEvent: function (sender, type) {
switch (type) {
case ccui.PageView.EVENT_TURNING:
var pageView = sender;
cc.log("page = " + (pageView.getCurPageIndex() + 1));
break;
default:
break;
}
}, // slider
sliderEvent: function (sender, type) {
switch (type) {
case ccui.Slider.EVENT_PERCENT_CHANGED:
var slider = sender;
var percent = slider.getPercent();
cc.log("Percent " + percent.toFixed(0));
break;
default:
break;
}
}, // text field
textFieldEvent: function (sender, type) {
switch (type) {
case ccui.TextField. EVENT_ATTACH_WITH_IME:
cc.log("attach with IME");
break;
case ccui.TextField. EVENT_DETACH_WITH_IME:
cc.log("detach with IME");
break;
case ccui.TextField. EVENT_INSERT_TEXT:
cc.log("insert words");
break;
case ccui.TextField. EVENT_DELETE_BACKWARD:
cc.log("delete word");
break;
default:
break;
}
}
cocostudio——js 3 final控件事件的更多相关文章
- (转)客户端触发Asp.net中服务端控件事件
第一章. Asp.net中服务端控件事件是如何触发的 Asp.net 中在客户端触发服务端事件分为两种情况: 一. WebControls中的Button 和HtmlControls中的Type为su ...
- JS数量输入控件
JS数量输入控件 很早看到kissy首页 有数量输入控件,就随便看了下功能 感觉也不怎么难 所以也就试着自己也做了一个, 当然基本的功能和他们的一样,只是用了自己的编码思想来解决这么一个问题.特此给大 ...
- RxJava RxBinding RxView 控件事件 MD
Markdown版本笔记 我的GitHub首页 我的博客 我的微信 我的邮箱 MyAndroidBlogs baiqiantao baiqiantao bqt20094 baiqiantao@sina ...
- 基于MFC的网页ActiveX控件开发全程实录2(js向ActiveX控件传递参数)
原文转自 https://blog.csdn.net/qianbin3200896/article/details/81452822 1.ActiveX控件部分(JS到ActiveX控件)继续上一篇博 ...
- MFC 设置控件事件对应的函数
在项目中,右击你想设置的控件,打开属性. 然后找到:控件事件,如果在Visual Studio 2015中操作,显示如图: 然后,以设定单击事件为例: 点击右边的三角,选择 <Edit Code ...
- 用js给html控件赋值
用js给html控件赋值 <script> window.onload=function setValue()//在页面加载时赋值 { document.getElementById( ...
- 2.23 js处理日历控件(修改readonly属性)
2.23 js处理日历控件(修改readonly属性) 前言 日历控件是web网站上经常会遇到的一个场景,有些输入框是可以直接输入日期的,有些不能,以我们经常抢票的12306网站为例,详细讲解如 ...
- Python pyQt4/pyQt5 学习笔记1(空白窗口,按钮,控件事件,控件提示,窗体显示到屏幕中间,messagebox)
PyQt4是用来编写有图形界面程序(GUI applications)的一个工具包.PyQt4作为一个Python模块来使用,它有440个类和超过6000种函数和方法.同时它也是一个可以在几乎所有主流 ...
- ADF控件ID变化引发JS无法定位控件的解决方法
原文地址:ADF控件ID变化引发JS无法定位控件的解决方法作者:Nicholas JSFF定义的控件ID到了客户端时往往会改变.例如在JSFF中的一个的ID为"ot1",但是当这个 ...
随机推荐
- 前端面试题整理(js)
1.HTTP协议的状态消息都有哪些? HTTP状态码是什么: Web服务器用来告诉客户端,发生了什么事. 状态码分类: 1**:信息提示.请求收到,继续处理2**:成功.操作成功收到,分析.接受3** ...
- 配置Eclipse使用外部Maven
当集成Maven时,Eclipse会安装上一个内嵌的Maven, 这个内嵌的Maven通常会比较新,但不一定很稳定,而且往往也会和命令行使用的Maven不是同一个版本.这里又会出现两个潜在的问题:首先 ...
- php的var关键字
public和var的作用差不多 因为 var定义的变量如果没有加protected 或 private则默认为public php4 中一般是用 varphp5 中就一般是用 public了 现在基 ...
- ASP.NET - 使用 XML
对XML文件进行简单的增加,删除,修改,查看等功能. XML代码: <?xml version="1.0" encoding="UTF-8"?> & ...
- unix命令: ifconfig
ifconfig 命令被用来: 1.为一个网卡分配一个IP地址 2.设置本地环路界面 3.分配一个子网掩码(可选) HP-UX: # /usr/sbin/ifconfig lan0 lan0: fla ...
- node-inspector使用
nodejs.gulp调试工具node-inspector使用 俗话说欲善其功,必先利其器. 作为目前新型的Web Server开发栈倍受开发者关注的Nodejs来说,调试技术是学习开发的基石,所以对 ...
- Delphi - 闲来无事,自己写个Timer玩玩(多线程Timer)
明天去坐火车,回家,今天就没有事做,本来在弄一个跨进程获取其他程序里面组件,如ListView,ListBox,Button等的信息,突然有个想法自己写个Timer,不用SetTimer函数,我们自己 ...
- Spring Uploading Files
1,在servlet-dispatcher.xml中添加代码 <bean id="multipartResolver" class="org.springframe ...
- 基于visual Studio2013解决C语言竞赛题之1064互质数差1验证
题目 解决代码及点评 /* 64. 任意两个互质的自然数, 经过若干次加减后,总可获得结果为1的数值. 所谓互质数(即互素的数),是指这两个数除 1外再没有其它公因数. 如14,9为 ...
- 某公司ASP.NET应聘上机试题
ASP.NET笔试题是ASP.NET程序员面试必须经历的,一般会叫你填两个表 1个是你的详细信息表 1个是面试题答卷 两个都要注意反正面是否都有内容不要遗漏,如果考你机试一般也有两种,就是程序连接数据 ...