AS3CN看到zhengenru2008 发的25行AS能做出什么?

打开http://www.25lines.com/?page_id=139 一看,的确很强悍,仅仅25行的代码实现了很多精妙绝伦的效果。

http://www.25lines.com/finalists/0812/043.swf 这个小游戏挺有意思,哈哈,回到了DOS时代~

PS:原来这个25行的活动是著名的Keith Peters大师发起的。

发现一个网站:http://www.shinedraw.com/。博客的主人使用了ActionScript和SilverLight两种技术对在相同的应用上做了比较。

有兴趣的同学可以去看一下。

而且貌似这位开发者也会使用中文。

依据是下面这个古老的东东,使用Flash4和as1写的:)

hb_shine_draw

Air允许您在程序中使用ActionScript 库(SWC 已编译文件)。同时也就意味着您可以在JavaScript AIR 程序中使用ActionScript 库以充分利用他们的优点和特性

要在JavaScript中使用SWC库您需要按以下步骤。

1、下载SWC格式的ActionScript库.您可以使用corelib.swc作为示例,然后重命后缀为zip(或其他存档格式,如RAR);

2、下一步,解压缩其中的library.swf(其实上一步可以不用重命名,只要打开方式选择WinRAR即可)

3、重命名为corelib.swf,然后把它放在项目文件夹下

最后,将以下代码放置在您的程序中以引入库


现在,您就可以引用库中的任何方法:

import com.adobe.utils.ArrayUtil;
var isEqual = new  com.adobe.utils.ArrayUtil.arraysAreEqual(array1,array2)

Translated From:http://casario.blogs.com/mmworld/2008/12/using-actionscr.html

前些天发了个Ensemble Introduces Tofino-Visual Studio 的Flex 开发插件 很多人说不够智能。
今天再发一个。呵呵.只是预告
原文:http://www.sapphiresteel.com/Adobe-Flex-Development-in-Visual
这篇新闻是前天发出来的。
简单翻译一下:

SapphireSteel Software 今天宣布了即将发行的Amethyst,一个使用Adobe Flex/AIR 开发RIA的IDE。

Amethyst 将会有两个版本

Amethyst个人版(免费)-Amethyst Personal Edition

amethyst-pe-preview2

Amethyst 个人版是一个提供了为Flex/AIR/ActionScript提供了项目管理,代码编辑,编译运行的环境的免费版本。它将完全免费并且可以自定义安装在免费的Visual Studio ‘Shell’ edition(Visual Studio 2005及以下的同学赶快升级吧)

Amethyst 专业版(商业版,收费)-Amethyst Profressional

amethyst-pro-preview

Amethyst 专业版为Flex和AIR提供了一个拖拽的可视化设计环境。可视化的设计器将会被集成到Visual Studio的工具箱中,属性窗体和代码编辑器将会为C#和VB开发者提供一个无缝的设计/编码体验。

Amethyst 专业版也会包含完整的智能功能,包括了代码提示,代码导航和自动展开摘录(auto-expanding snippets)。Amethyst Profressional 将会智能化分析预编译库和书写的代码。同时,它将提供一个与调试其他Visual Studio 语言一样的调试器用来一步步地验证代码,获取和检查变量。

Amethyst建立在SapphireSteel Software Ruby In Steel(一个用于Ruby on Rails的Visual Studio IDE)的经验之上。当然Amethyst只不面向Ruby开发者,Amethyst将会有选择性地将Ruby In Steel项目整合进去,用Ruby on Rails为Flex和AIR程序提供支持。(当然也包括其他Visual Stuido 支持的语言,如C#和ASP);

>>状况

 

Amethyst 个人版(beta)将会在2008年12月的第二个星期发布。

Amethyst专业版(beta)将会在2009年的第一季度,最终版本将会在第二季度发布。

原文:http://blog.comtaste.com/2008/11/how_to_know_who_called_my_acti.html

获取方法调用者和时间是在调试ActionScript的时候一个很好的技巧。您可以像”throw new Error()”这样在要跟踪的方法中声明一个错误。通过一个自定义的错误/异常我们可以跟踪到栈并且看到整个处理过程。

Continue reading »

好久没去GrennSock的博客逛逛了,今天意外点到。发现了好东东-TweenGroup。最新版本是11月25日更新的0.997版。

TweenLite一直是我非常喜欢的缓动类,简单,高效,省资源,以致我对Flash内置的缓动类不熟悉,-_-!

今天的焦点不是TweenLite 而是TweenGroup,呵呵。

啥是TweenGroup咧?

官方的描述就是“TweenGroup is a very powerful, flexible tool for managing groups of TweenLite/TweenFilterLite/TweenMax tweens”(TweenGroup是一个非常高效的,灵活的用来管理TweenLite/TweenFilterLite/TweenMax 缓动的工具)

太抽象了。

–Update2008/12/01

大致地翻译一下吧。本人翻译功底不是很强悍,欢迎各位指正。原文:

TweenGroup – Manage Sequences and Groups of TweenLite/FilterLite/Max Tweens

Continue reading »

这些东东都不是很难,只是方法不常用到或没注意到:)以后还有陆续有添加。同时也希望给位同学多多提供一些Tips

1、MouseEvent在某些时候要记得运行MouseEvent.updateAfterEvent();方法。主要表现在拖动的时候。

如果不执行该方法,会有延迟,比如拖动会有延迟。

2、某些时候要记得stopImmediatePropagation(参考:做个笔记Event的stopImmediatePropagation和stopPropagation方法

主要表现在单击某元素的时候,不希望这个click操作到达下一层。因为stopImmediatePropagation立即进行了事件冒泡。防止对事件流中当前节点中和所有后续节点中的事件侦听器进行处理。

Example:

3、同AJAX一样,多次请求一个动态页面请加个时间戳,防止缓存。

...
var date:Date = new Date();
xmlLoader.load("xml.aspx?datestamp="
	+date.getMilliseconds());//xmlLoader是我自己的类,继承了Loader类。
...

4、(感谢望月狼的留言)

mouseEnabled  = false

?.tabEnabled = false

?.mouseChildren = false

?.tabChildren = false

把DisplayObjectContainer所继承的这四个属性都设掉,可降低cpu运算率
5、Flex中使用TitleWindow时如果要通过代码控制CloseButton按钮记得使用invalidateDisplayList();方法

(参考:使用代码控制TitleWindow的showCloseButton的奇怪问题)

它其实实现的是mx.core.UIComponent的updateDisplayList()方法。但是不可能直接使用该方法。

Help中是这么写的。

Continue reading »

作者的Blog上看到的。即将发行。

Amazon上已经可以预定,$26.39。点击查看

应该说是Making Things Move的升级版(同作者),呵呵

51JVSKmWAfL._SS500_

Continue reading »

很简单,不过因为KeyboardEvent这个事件不是很常用,而常常会去找TextEvent里怎么判断(也许只有我会这样干~-_-!),呵呵。

package
{
	import flash.text.TextField;
	import flash.events.KeyboardEvent;
	import flash.ui.Keyboard;
	/**
	 * ...
	 * @author Dada
	 */
	public class EnterTest
	{

		public function EnterTest()
		{
			(txtKeyWord
			 as TextField).addEventListener(
			KeyboardEvent.KEY_DOWN,trackEnter);
		}

		private function trackEnter(
			kevent:KeyboardEvent):void
		{
			if (kevent.keyCode == Keyboard.ENTER)
			{
				trace("按下回车了");
			}
		}

	}

}

昨天写了《使用Asp.Net绕过As3的跨域安全沙箱》,有几个小问题。

先上一副图吧。

connect

这里A服务器是我们的服务器,假设了一个Web服务器。放有一个Asp.Net的资源转发文件(即我上面写的redir.ashx),同时有个flash的swf供网友使用。

B服务器是要获取的资源的服务器。

1、天地会上有人说那crossdomain.xml跑哪里去了,因为这里swf与asp.net的转发文件同域,因此这里不用crossdomain.xml也可以了。

2、这种方法的确比较耗资源,其实这样做也是不得已而为之,因为我们有时候需要从其他服务器取一些东西,而对方服务器又不是我们的,让flash直接去取如果对方没有放置crossdomain.xml则会失败。

最好是先判断一下B服务器是否有crossdomain.xml以及其中是否允许直接访问吧,如果允许访问就不要通过A服务器转发:)

同时,天地会上有同学qimming写了PHP和Asp的。转发一下:

<%
'用于实现Flash跨域读取文件
'注意:本程序为asp版,您的空间必须支持asp,使用过多将会加重服务器负担

dim url
url = request("url")

if url = "" then
        response.End()
end if

dim obj
Set obj = Server.CreateObject("Msxml2.ServerXMLHTTP")
obj.open "GET",url,false
obj.send()

if obj.readystate<>4 then
        response.Redirect(url)
end if

Response.ContentType = "application/octet-stream"
Response.BinaryWrite obj.responseBody

Set obj = nothing

%>

© 2011 达达's Blog Suffusion theme by Sayontan Sinha