一、声明属性

要声明属性,需要在 cc.Class 定义的 properties 字段中,填写属性名字和属性参数。在此处声明的属性在Cocos Creator编辑器属性检查器面板中可以读取和编辑。如下:

二、下拉列表

要在属性检查器上显示为下拉列表的样式,需设置属性类型为枚举,并设置默认值为枚举值。为了设置为枚举,需定义一个枚举类型,可以使用Cocos提供的cc.Enum定义枚举。

1. 中文下拉选项文字

要想定义中文的下拉选项文字,必须使用cc.Enum。

2. 动态设置属性的可见性(类似级联下拉列表)

要想选择不同的下拉选项,在属性面板上显示或隐藏不同的属性,需把要动态设置可见性的属性的visible写成函数的形式,并在函数中根据不同的情况返回不同的布尔值。

三、滑动条

实现滑动条样式需设置属性的min,max,step,并把slide设置为true。

四、回调函数

要想在属性面板绑定回调函数,需设置属性的type为cc.Component.EventHandler,设置默认值为空,并且在构造函数中初始化属性为cc.Component.EventHandler的实例。

五、自定义类

用自定义类定义一个属性,可实现对多个属性分组。用cc.Class定义一个类,并设置name为类名。然后设置属性的type为自定义类的类名,设置默认值为空。然后在构造函数里实例化属性值。

六、实时预览

要想在属性面板上设置的值产生的效果可以在编辑器中实时预览,需要让脚本在编辑器模式下运行。为此,需要在类中定义editor属性,并设置executeInEditMode为true。而editor 只能定义在 cc.Component 的子类中。而在设置过面板上的数据后,还要用属性notify来更新状态。下面举个例子:有三个label,用一个可以在面板上设置的数值来控制显示的label的个数。如下图所示效果(设置Label Num的值为2,则只显示前面两个Label):

实现代码PropViewNow如下:

七、其他样式

锁定:设置readonly为true。文本框:把属性的默认值设置为字符串字面量,若想初始文本为空,则设置空的字符串。无需设置type。整数数值:要想使属性在属性面板上只接受整数,需把属性的type设置为cc.Integer。若不设置type,把默认值设置为数值,则表示属性为浮点数。

八、属性类型定义方式总结

1、当属性类型为基本类型时:用字面量设置其默认值。完整声明时也无需设置type。

2、当属性类型为cc.ValueType的子类时:设置默认值为该类的实例,或者在简单声明中填写其构造函数。这些类有:cc.Color,cc.Vec2,cc.Rect等。

3、当属性类型为其他类时:把属性的type设置为其构造函数,默认值设置为null或者{},或者在简单声明中设置其构造函数。若想在面板上显示非空的值,需要在ctor里面用实例初始化这个属性。

定义一个属性_CocosCreator脚本属性个性化定制——下拉列表属性、滑动条属性相关推荐

  1. 改变静态文本notify 属性_CocosCreator脚本属性个性化定制——下拉列表属性、滑动条属性...

    一.声明属性 要声明属性,需要在 cc.Class 定义的 properties 字段中,填写属性名字和属性参数.在此处声明的属性在Cocos Creator编辑器属性检查器面板中可以读取和编辑.如下 ...

  2. 做一个简单的银行、账户演示程序。 (1)定义一个账户类,包含用户名、密码、余额等属性、存钱、取钱等方法。 (2)定义一个银行类,包含银行名、账户列表等属性,开账户、查账户的功能。账户列表可以使用集

    做一个简单的银行.账户演示程序. (1)定义一个账户类,包含用户名.密码.余额等属性.存钱.取钱等方法. (2)定义一个银行类,包含银行名.账户列表等属性,开账户.查账户的功能.账户列表可以使用集合相 ...

  3. 定义一个长方形的类。在这个类中有二个属性长和宽。 定义一个计算长方形周长的方法 定义一个计算长方形面积的方法...

    好的,以下是一个定义长方形类的 Python 代码: class Rectangle:def __init__(self, length, width):self.length = lengthsel ...

  4. html定义一个集合,HTML标签属性集合

    HTML标签属性集合 更新时间:2017/2/8 10:28:00  浏览量:607  手机版 图象热点映射范围 锚,为文档定义连接 首字母缩写词 地址 块引用 放大字体 为文档中的其他锚定义基本UR ...

  5. 1.定义一个Father和Child类,并进行测试。 要求如下: 1)Father类为外部类,类中定义一个私有的String类型的属性name,name的值为“zhangjun”。 2)Child

    1.定义一个Father和Child类,并进行测试.  要求如下:  1)Father类为外部类,类中定义一个私有的String类型的属性name,name的值为"zhangjun" ...

  6. 定义一个属性_Python property属性

    1. 什么是property属性 一种用起来像是使用的实例属性一样的特殊属性,可以对应于某个方法 # ############### 定义 ###############class Foo: def ...

  7. java定义一个类计算圆的半径,C++编程:定义一个圆类要求属性为半径,操作为计算圆的周长和面积...,java编程:定义一个圆类,属性为半径,方法为对输入的半径计...

    导航:网站首页 > C++编程:定义一个圆类要求属性为半径,操作为计算圆的周长和面积...,java编程:定义一个圆类,属性为半径,方法为对输入的半径计 C++编程:定义一个圆类要求属性为半径, ...

  8. python定义一个dog类 类属性有名字毛色体重_面向对象实践,练习,Python

    1.定义一个汽车类(Car),属性有颜色,品牌,车牌号,并实例化两个对象 2.定义一个球员类(Player),属性有身高.体重.姓名,实例化两个球员,分别是姚明和科比 3.定义一个僵尸类(Zombie ...

  9. 定义一个圆类——Circle,在类的内部提供一个属性:半径(r),同时 提供 两个 方 法 : 计算 面积 ( getArea() ) 和 计算 周长(getPerimeter()) 。

    定义一个圆类--Circle,在类的内部提供一个属性:半径®,同时 提供 两个 方 法 : 计算 面积 ( getArea() ) 和 计算 周长(getPerimeter()) . 通过两个方法计算 ...

最新文章

  1. python可以实现什么黑科技_Python黑科技之元类
  2. 使用ST05 研究product extension field deletion
  3. 架构师被疯抢,华为出了什么招?
  4. mysql 优化 整体思路
  5. 2 Linux基本命令复习2
  6. 线性代数中的克莱姆法则与几何解释
  7. 华南理工大学 电力电子技术(王兆安) 期末复习笔记1 第二章第九章
  8. Synology安装并实现在linux和win下使用ISCSI存储
  9. 最小二乘支持向量机(基于MATLAB)
  10. java的第十一章总结(枚举,泛型)
  11. 智能电视大战背后的秘密
  12. 按键精灵 - 安卓版 - 罗盘 - 八向方位模拟 - 自动寻路
  13. win11如何切换输入法 win11快速切换输入法
  14. 福建将乐窑文物首次系统对外展示 133件完整器亮相京城
  15. oracle 动态监听例子,ORACLE动态监听总结
  16. HDU 1847 Good Luck in CET-4 Everybody!(巴什博弈论)
  17. 2019人工智能前景怎么样,发展趋势好吗?
  18. 处理el获取session值:严重: Servlet.service() for servlet [LoginServlet] in context with path [/LDMS]...
  19. 自律自学,越努力越幸运
  20. 百度AI攻略:银行卡识别

热门文章

  1. MySQL类型介绍以及适用范围
  2. 红帽linux iso镜像,红帽 Red Hat Linux相关产品iso镜像下载
  3. 多线程编程--异步转同步之CountDownLatch
  4. 容器源码解析之容器全貌(一)
  5. C++学习笔记:(三)静态与名字空间
  6. elasticsearch index doc过程概述
  7. 7-4 求链式线性表的倒数第K项(最佳解法)(List容器)
  8. 关于SET和UNORDER_SET
  9. 操作篇 了解学习NAT实验(关于静态NAT、动态NAT、EasyIP、端口映射的配置方法))
  10. Mysql数据库(一)——mysql数据库初体验