zoukankan      html  css  js  c++  java
  • 关于Cocos2d-x中节点的获取

    方法一:

    1.在.h文件的属性里面先声明要使用的节点或者变量。

    private:

      Label *scorelabel;

    2.在.cpp文件中创建并使用这个节点或者变量。

    scorelabel = Label::createWithSystemFont("Score: 0", "Arial", 36);
    scorelabel->setAnchorPoint(Vec2(1, 0));
    scorelabel->setPosition(Vec2(size.width, size.height - scorelabel->getContentSize().height)); //位于右上角
    addChild(scorelabel, 10);

    方法二:

    1.在.cpp文件里面用auto声明变量,创建并使用这个节点或者变量。

    auto scorelabel = Label::createWithSystemFont("Score: 0", "Arial", 36);
    scorelabel->setAnchorPoint(Vec2(1, 0));
    scorelabel->setPosition(Vec2(size.width, size.height - scorelabel->getContentSize().height)); //位于右上角

    2.在添加到父节点的时候与方法一不同的是,添加的时候是有标记Tag的。这里的SCORE_LABEL是.h文件里面配置有游戏信息

    addChild(scorelabel, 10, SCORE_LABEL);

    .h文件

    public:
    enum NodeTag
    {
      HERO_TAG = 100,
      ENEMY_TAG = 101,
      HERO_BULLET_TAG = 102,
      SCORE_LABEL = 103,
      PAUSE_MENU = 104
    };

    3.用getChildByTag方法来通过节点的Tag来获得节点,从而对节点进行操作(有点像安卓中获得view的方法)

    auto scorelabel = (Label*)this->getChildByTag(SCORE_LABEL);

    scorelabel->setString(buf);

  • 相关阅读:
    Python 字符串处理大全.
    图形化翻译助手
    爬虫详解
    Python 模块.
    定制序列
    Python 的property的实现 .
    Python的魔法方法 .
    通过类的装饰器以及各种单例模式(修复版本)。
    是时候写一下Python装饰器了。
    %E2%80%8C的字符串问题,卡住三个小时。
  • 原文地址:https://www.cnblogs.com/HangZhe/p/5792994.html
Copyright © 2011-2022 走看看