请教一个访问控件的问题

  • Creator 版本:v1.9.1

  • 目标平台:

  • 详细报错信息,包含调用堆栈:

  • 重现方式:

  • 之前哪个版本是正常的 :

  • 手机型号 :

  • 手机浏览器 :

  • 编辑器操作系统 :

  • 编辑器之前是否有其它报错 :

  • 出现概率:

  • 额外线索:

在 canvas 上有一个按键 button A,同级上还有一个 EditBox,我想着点击按键 A,然后在 EditBox 内就会显示按键 A 给它的一个值,整体就是想模拟一个输入的键盘,请问应该是怎么访问这个 EditBox 控件的?谢谢了。

多看文档:利用属性检查器设置节点或者组件

我有看了,但是不是很理解,能举个例子吗?

在你给button A 挂的脚本的properties里,声明一个属性

    editBox : cc.EditBox

然后你在编辑器的层级管理器上 把EditBox节点拖到button节点的属性检查器里

嗯,就是关于这个节点拖到另外一个节点这里不是很清楚,我现在的都是把所有的控件都写在一个 game.js 上,然后控件都挂在上面,然后在 game.js 中获得控件,所以说我不明白这个拖的含义,所以我现在是想在 one.js 上的 button 上的一个方法,控制 two.js 上的 editbox 的显示内容,不知道这样是否可以?

嗯,就是关于这个节点拖到另外一个节点这里不是很清楚,我现在的都是把所有的控件都写在一个 game.js 上,然后控件都挂在上面,然后在 game.js 中获得控件,所以说我不明白这个拖的含义,所以我现在是想在 one.js 上的 button 上的一个方法,控制 two.js 上的 editbox 的显示内容,不知道这样是否可以?

在one.js上声明一个属性editBox,把editbox关联进去,之后再one.js声明一个方法,把button的方法关联进去,通过button传值,把值传到方法里面,在方法里面修改editbox

拖就是你这里 “挂”的意思,目前你控件都挂在game.js上,你可以试着把EditBox的two.js挂buttonA的one.js上,就能直接控制了。

还有一种实现方式,既然目前你控件都挂在game.js上,你可以在one.js里面发事件,然后game.js 监听,最后使用game.js来调two.js的方法。

您好啊,把 button 的方法关联进去,实际上是不是这样的做法:
我已经在 button 中的属性检查器 Click Events 添加了一个在 one.js 上的一个方法,这个 Click Events 默认是传了 event ,还有一个 CustomEventData,也就是你说的 value,我想做的是成功了,我点击这个按键,设定好的 CustomEventData 确实传进去 editbox 显示出来了。

谢谢您。

就是我一开始我这样想的,我是想着我的这个button是在one.js有一个方法,然后我想的是在这个方法里面控制two.js里面的editbox的内容,不知道我原来的想法是不是错的,还是 cocos creator 这个引擎是不管哪个 js ,只要在控件里拖动挂上去一个 js ,js上写好方法就可以控制?

如果可以的话能否加个 qq 向您请教,我的 qq:491775684,谢谢。

您好啊,我现在确实是在 game.js 上写了一个方法控制 editbox 上的内容,在 button 上挂上了这个方法,就是在 button 的属性检查器 Click Events 挂上方法,并且用 CustomerEventData 传了过去。

但是我还是不能理解你说的方法是怎么个关联起来的,就是 one.js 的一个方法能控制 two.js 中另外一个方法?

方便的话能否加个 qq 请教您,我的 491775684 ,谢谢。