createjs初学-所有的显示对象介绍

时间:2019-11-25 发布者: 访问量:3343

在createjs中显示对象都是继承自DisplayObject这个类,下面这个图可以直观的看出继承关系。createjs初学-所有的显示对象介绍(1)_第1张图片

下面我就简单介绍一下这几个显示对象的基本用法。

1.Bitmap很简单,一看就知道是显示图片用的,

var image=new createjs.Bitmap("images/test.jpg");

这样在构造函数中传入一个uri就可以显示一个图片了
需要注意的是如果在这个图片加载完成之前,Bitmap就被使用了,舞台上不会显示图片,舞台要重新渲染才能显示。
Bitmap还可以通过HTML元素来创建

var img = new Image();
img.src="images/test.jpg"; var image=new createjs.Bitmap(img);

除了Image元素还可以用Canvas和Video元素,不过最好不要用Video元素。

2.BitmapText
用在sprite sheet中定义的图片来显示文字,用换行符可以换行,但是不支持自动换行。
注意:BitmapText继承自Container,但是不能当做Container使用,像addChild和removeChild这样的方法都禁用了。

这个BitmapText以后再做个例子仔细研究。

3.Container
显然就是显示对象的容器,所有的显示对象都放在Container中,然后再加在舞台上,和actionscript中Sprite用法基本一样,
addChild、addChildAt、contains、getChildAt、getChildByName、getChildIndex、removeChild、removeChildAt、setChildIndex这些方法都很容易理解。

getObjectsUnderPoint(x,y,mode) 返回一个数组,包含这一坐标点下所有的显示对象。mode是个可选参数,默认是0,表示返回所有显示对象,1表示只返回mouseEnabled和mouseChildren的显示对象,2表示只返回不透明的显示对象。

getObjectUnderPoint 这个和上面一样,但是只返回一个最上层的显示对象,返回值是DisplayObject类型。

removeAllChildren 移除所有的子对象。

sortChildren(sortFunction)可以传入一个排序函数,对子对象进行排序。

4.DOMElement
这个类仍然处于试验阶段,有可能出现bug,发现bug请汇报给官方。

这个类可以让你在显示类表中放入你的显示列表中,并设定它的位置、旋转等属性。如果要添加鼠标事件的话,还是用htmlElement的方法。

var domElement = new createjs.DOMElement(htmlElement);
 domElement.htmlElement.onclick = function() { console.log("clicked");
 }

5.Shape
Shape类已经用了好几回了,就是用来绘制矢量图形用的。利用Graphics实例来实现了各种绘制矢量图的方法。
绘制的api基本和actionscript完全一样。

6.Sprite
这里的Sprite更像actionscript里的MovieClip,和SpriteSheet一起用,用来显示动画,有gotoAnPlay、gotoAndStop、play、stop这些方法。
这个以后再详细学习。

7.Text
用来显示一个行或者多行文字,这个之前介绍过了

var text = new createjs.Text("Hello World", "20px Arial", "#ff7700"); text.x = 100; text.textBaseline = "alphabetic";

大概就是这样用,也很简单,很方便。

发布于
  用户评论
    生活编程