节点相关API

本文详细介绍了Cocos Creator中如何操作节点,包括获取当前节点、父节点和子节点的方法,以及全局查找和查找子节点的API。同时,讲解了如何获取和使用组件,特别是系统组件和自定义脚本组件的获取。文中通过实例展示了如何在不同脚本间调用方法,实现组件间的交互。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

API 获取节点

  1. 当前节点 this.node : cc.Node
    例如 let node : cc.Node = this.node;
  2. 父节点 this.node.parent
  3. 子节点 this.node.children : cc.Node[]
  4. 全局查找
    例如 target = cc.find (“Canvas/佩奇/名字”)

    注意不是文件路径

  5. 查找子节点
    例如 target = cc.find(“xx/yy”, someNode)

API 获取组件

注意:分清楚组件和节点的关系,组件是节点下属性栏里的一个对象,例如节点的脚本组件、Widget、下图New Button 下的Background与Label在这里插入图片描述

获取组件:
let label = node.getComponent(cc.Label)
获取自定义类型的组件 (脚本组件)
let script = node.getComponent(“YourScript”)

上面的node为已获取的节点。
==注意:Label等系统定义过的组件要cc.~不能用双引号包裹组件名。否则会获取不到。

脚本组件的访问

script.方法名()能够直接调用另一个脚本中的方法
下面是在Button节点下的ButtonScript

  start () {    
        this.node.on('mousedown', this.onClick, this);
    }
onClick(){
       onClick(){
        let tar:cc.Node=cc.find("Canvas/label");
    
        //获取script组件
        let script = tar.getComponent("SimpleScript");
        script.dochange();
    }
    }

SimleScript脚本放在了Label的节点下
而在SimpleScript文件下有该函数,实现了调用另一脚本文件下的函数。

  dochange(){
        let x=this.node.x;
        let y=this.node.y;
        this.node.setPosition(x,-y);
        let label= this.node.getComponent(cc.Label);
        label.string="changed";
        
    }

在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值