Wednesday, 10th March 2010.

Posted on Saturday, 18th April 2009 by chris

一直不明白如何将很多的类编译成一个swc文件,并且在Flash里可用,就像Google Map Flash API一样,今天终于找到了。http://vincent.the.tsao.googlepages.com/ 这篇文章有很详细的说明。现转于此:

Using Flex SWC Files in the Flash CS3 Authoring Environment

by Vincent Tsao

Last updated: 24-August-2008
Problem
Many API’s or code libraries written in ActionScript 3 and compiled into SWC files are meant for use with Flex tools and are unable to be imported into the Flash CS3 Authoring Environment.  This [...]

Tags: , ,
Posted in ActionScript, Flash, Flex | Comments (5)

Posted on Thursday, 14th August 2008 by chris

在Firefox下看上面两个层叠的Flash的显示,效果会很怪异,两个Flash在显示时,层次混乱。下面是相应的代码:
<div style=”z-index:30;”>
<object classid=”clsid:D27CDB6E-AE6D-11cf-96B8-444553540000″ codebase=”http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=9,0,28,0″ width=”550″ height=”400″>
<param name=”movie” value=”test0.swf” />
<param name=”quality” value=”high” />
<embed src=”test0.swf”
quality=”high” pluginspage=”http://www.adobe.com/shockwave/download/download.cgi?P1_Prod_Version=ShockwaveFlash”
type=”application/x-shockwave-flash” width=”550″ height=”400″>
</embed>
</object>
</div>
<div style=”z-index:100; margin-top:-300px;”>
<object classid=”clsid:D27CDB6E-AE6D-11cf-96B8-444553540000″ codebase=”http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=9,0,28,0″ width=”550″ height=”400″>
<param name=”movie” value=”test1.swf” />
<param name=”quality” value=”high” />
<embed src=”test1.swf” quality=”high” pluginspage=”http://www.adobe.com/shockwave/download/download.cgi?P1_Prod_Version=ShockwaveFlash” type=”application/x-shockwave-flash” width=”550″ height=”400″></embed>
</object>
</div>
在IE下显示没有这个问题。不知道是Firefox的问题,还是Firefox下的Flashplayer的问题。我想了一个解决这个问题的办法,就是将其中的一个或者两个都分别放到另外的页面里,然后通过iframe来加载,而不是直接使用object标签。
下面将主页面index.html的body里面的代码改成下面这样:
<div>
<iframe src=”frame.html” width=”550″ height=”400″ frameborder=”0″></iframe>
</div>
<div style=”margin-top:-300px”>
<object classid=”clsid:D27CDB6E-AE6D-11cf-96B8-444553540000″ codebase=”http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=9,0,28,0″ width=”550″ height=”400″>
<param name=”movie” value=”test1.swf” />
<param name=”quality” value=”high” />
<embed src=”test1.swf” quality=”high” pluginspage=”http://www.adobe.com/shockwave/download/download.cgi?P1_Prod_Version=ShockwaveFlash” type=”application/x-shockwave-flash” width=”550″ height=”400″></embed>
</object>
</div>
页面frame.html的body里面的代码如下:
<object [...]

Tags: , ,
Posted in Flash, Flex, HTML, 流水账 | Comments (0)

Posted on Wednesday, 2nd July 2008 by chris

这两个搞了一个flash,因为项目比较大,所以我想将一些较为基础的类的代码打到一个包里,本以为很简单的事情,搞了半天也没搞出来。我是用的flex 3做的开发。
问题是,如果将所有的类放到一个 actionscript project 中,Flex 在编译时,事实上并不会将本项目文件夹下的所有类代码都包进来,它似乎只关心它要用到的一些代码。这一点跟VS是完全不一样的。我想或许哪边有这一个选项的设置,可惜找了半天也没找到,试着用flash编译项目,也是一个样的。晕死…
actionscript project 搞不定就重搞了一个 flex library project, 不过发现也是有问题的,我是想让它生成.swf的文件,不过flex library project默认是在bin文件夹下生成一个.swc的文件。得解压了才会出现一个library.swf,这还是不能满足我的要求。后来发现可以通过设置一些编译的参数来达到目的,不过,文件名还是叫library.swf,只是不是将它跟另一个文件打包成一个.swc文件,而是放到一个目录里。唉,也算是基本达到目的了吧。至于设置编译参数的参考,可以到 http://livedocs.adobe.com/flex/3/html/help.html?content=compilers_04.html 上看看,而事实上我倒是没有用这个方法,太烦,这就是我最讨厌的非微软阵营的一大特点,很多简单的事确复杂化了。我用了ant来编译的。具体方法参考 http://www.jakehilton.com/?q=node/27 ,只是这篇文章里的相应的编译参数要更改。下面代码是我的大致的设置:
<?xml version=”1.0″ encoding=”UTF-8″?>
<project name=”RpgGame ClientApp Build” default=”Compile ClientApp Swf” basedir=”.”>
<property name=”compc” location=”C:\Program Files\Adobe\Flex Builder 3 Plug-in\sdks\3.0.0\bin\compc.exe”/>
<target name=”Compile ClientApp Swf”>
<exec executable=”${compc}” dir=”.” failonerror=”false”>
<arg line=”-source-path .”/>
<arg line=”-directory=true”/>
<arg line=”-output ../WebSite/libraries/app”/>
<arg line=”-include-sources .”/>
</exec>
</target>
</project>

Tags: , ,
Posted in ActionScript, Flash, Flex | Comments (1)