ActionScript、OO、连缀 短命女 2021-12-09 20:27 193阅读 0赞 写as已经有3个月多了,第三个项目进行中。 也正是从第三个项目开始,抛弃了臃肿缓慢的mx库,只用纯flash库,开发环境也转到了FlashDevelop。 通过这几月的时间,我终于对OO有了一点点认识。虽然之前我写了3年的C\#代码,但都是自己小打小闹,没有上升到项目的程度。OO还是不OO都是自己说了算。 以下仅为我对OO的一点点小小的认识,不足之处还请大侠们指出。 私有字段:用于储存状态。 属性:获取或修改状态,在修改前可以进行验证,改变状态的同时,意味着发生行为(必要时)。可以设置访问权限:只读是最常见的一种。 as中最核心的类应该就是显示对象类了吧。Sprite做为最轻量级的容器当然是最常被使用的对象之一。 但是,相信很多人都发现仅仅通过属性和Sprite自身的方法来写代码实在是太麻烦了。 如果用过JQuery,你一定知道连缀,极大的减少代码量及出错可能性。 由于as3不支持泛型,也不像DOM那么简单可以全部包装成JQuery对象,于是我想了一个折中的办法来返回自己用来实现连缀。那就是--接口。 仿mx,写一个类叫Canvas,继承自Sprite,实现ICanvas接口。其他所有的显示对象均继承自Canvas即可。 public interface ICanvas \{ //部分 function addChildEx(child : DisplayObject, x : Object = null, y : Object = null) : ICanvas; function appendTo(parent : DisplayObjectContainer, x : Object = null, y : Object = null) : ICanvas; function removeAllChildren() : ICanvas; function removeChildEx(child : DisplayObject) : ICanvas; function setHandCursor(handCursor : Boolean) : ICanvas; function hide() : ICanvas; function show() : ICanvas; function setPosition(x : Number, y : Number) : ICanvas; function setSize(width : Object = null, height : Object = null) : ICanvas; function setScale(scaleX : Number = 1.0, scaleY : Number = 1.0) : ICanvas; function onEvent(event : String, func : Function) : ICanvas; function click(onClick : Function) : ICanvas; \} 这样的话使用起来就很方便了。 var canvas : Canvas = new Canvas(); canvas.setSize(100, 100) .show() .appendTo(this, 20, 20) .setHandCursor(true) .click(function(e : Event) : void \{ canvas.hide(); \}); 转载于:https://www.cnblogs.com/xxfflower/archive/2009/12/13/1623020.html
相关 连缀功能 一下都是我自己对代码的理解,但也是我自身也是弱菜一枚,很多地方可能理解有错,也希望大神们帮我指正。。我也会定期发错误总结写成博客! 所用代码为李炎恢老师博客前端代码!!!! 左手的ㄟ右手/ 2022年07月31日 17:19/ 0 赞/ 94 阅读
相关 连缀功能 一下都是我自己对代码的理解,但也是我自身也是弱菜一枚,很多地方可能理解有错,也希望大神们帮我指正。。我也会定期发错误总结写成博客! 所用代码为李炎恢老师博客前端代码!!!! 电玩女神/ 2022年07月31日 17:19/ 0 赞/ 88 阅读
相关 ActionScript、OO、连缀 写as已经有3个月多了,第三个项目进行中。 也正是从第三个项目开始,抛弃了臃肿缓慢的mx库,只用纯flash库,开发环境也转到了FlashDevelop。 通过这 短命女/ 2021年12月09日 20:27/ 0 赞/ 194 阅读
还没有评论,来说两句吧...