守望者--AIR技术交流

 找回密码
 立即注册

QQ登录

只需一步,快速开始

扫一扫,访问微社区

搜索
热搜: ANE FlasCC 炼金术
查看: 1925|回复: 0

[基础入门] FlasCC例子研究之c++interop

[复制链接]
  • TA的每日心情
    擦汗
    2018-4-10 15:18
  • 签到天数: 447 天

    [LV.9]以坛为家II

    1742

    主题

    2094

    帖子

    13万

    积分

    超级版主

    Rank: 18Rank: 18Rank: 18Rank: 18Rank: 18

    威望
    562
    贡献
    29
    金币
    52619
    钢镚
    1422

    开源英雄守望者

    发表于 2015-5-29 10:30:27 | 显示全部楼层 |阅读模式
    这个例子主要是向用户展示,如何通过FlasCC提供的API,来操作AS3中的运行时库。 包括stage,sprite等。
    1. #include <vector>
    2. #include <AS3/AS3.h>
    3. #include <Flash++.h>
    复制代码

    Flash 11.4时提供了一个基于工作线程的并发模型。这使得多个工作线程几乎可以同时访问Flash的API,只有一个限制就是,多个工作线程的对象不可以相互传递。工作线程之间的通信必须通过一个特殊的机制MessageChannel,或者在Flash 11.5后,可以使用共享的ByteArray进行通信。
    Flash++这个头文件提供了两组Flash API的绑定。一是Flash中的UI工作线程的对象,另一个就是一个属于一个工作线程的本地对象。
    当使用“ui”相关的属性来访问时,这些方法的调用会被阻塞,直到它可以被主工作线程服务并调用CModule.serviceUIRequests() (这一般情况下是被EnterFrame或者在一个timer中被处理)
    1. using namespace AS3::ui;

    2. int main()
    3. {
    4.     //取得当前舞台的引用
    5.     flash::display::Stage stage = internal::get_Stage();

    6.     //我们用一个C++ VECTOR来装Sprite引用
    7.     std::vector<flash::display::Sprite> sprites;
    8.     int numCircles = 10;

    9.     for(int i=0; i<numCircles; i++) {
    10.         // 新建一个Sprite
    11.         flash::display::Sprite mySprite = flash::display::Sprite::_new();

    12.         //访问它们的 graphics属性,然后,我们用来绘制

    13.         flash::display::Graphics graphics = mySprite->graphics;

    14.         //绘制实心圆
    15.         graphics->beginFill(0xff00ff, 0.5);
    16.         graphics->drawCircle(0.0, 0.0, 30.0);
    17.         graphics->endFill();

    18.         // 保存下来
    19.         sprites.push_back(mySprite);
    20.     }

    21.     // 添加到舞台
    22.     for(int i=0; i<numCircles; i++) {
    23.         // 修改位置
    24.         flash::display::Sprite s = sprites[i];
    25.         s->x = i * 25;
    26.         s->y = i * 25;

    27.         //添加进舞台
    28.         stage->addChild(s);
    29.     }
    30. }
    复制代码

    来张图吧,我们终于可以看见东西了。




    本帖子中包含更多资源

    您需要 登录 才可以下载或查看,没有帐号?立即注册

    x
    守望者AIR技术交流社区(www.airmyth.com)
    回复

    使用道具 举报

    您需要登录后才可以回帖 登录 | 立即注册

    本版积分规则

    
    关闭

    站长推荐上一条 /4 下一条

    QQ|手机版|Archiver|网站地图|小黑屋|守望者 ( 京ICP备14061876号

    GMT+8, 2024-3-29 00:29 , Processed in 0.043428 second(s), 31 queries .

    守望者AIR

    守望者AIR技术交流社区

    本站成立于 2014年12月31日

    快速回复 返回顶部 返回列表