自己在做一个Web 导航栏的时候遇到一个这样的问题,自己从网上下了一个flash导航栏模板,想自己改改坐成自己的,但是我的flash版本是cs4,打开时就会显示“意外的文件格式(如下图)”,上网搜了下才知道是因为模板的As版本太低,模板的版本是as1.0的,所以我就把这个fla文件放在flash 8中打开,再保存一遍,这样就顺利的在cs4的版本中打开了,接下来的第二个问题,当这个fla文件在cs4中打开后,修改后的文件要保存就必须保存为cs4的文件,这就意味着在flash 8中或者更低版本的flash中是无法打开这个修改过的版本的,其次我必须将文件中的一个按钮实例名命名成5(即以数字命名),但是flash cs4中给按钮这样实例名是非法的,而我又不想再把这个文件在flash8中重新修改一遍,后面我想到的是反编译导出的swf文件,将其导出为flash8格式~~~建议大家用硕思闪客精灵5.3版本的,5.4这个只能用试用版的,网上都找不到序列号,试用版的不能导出动作脚本~~~
这个是自己的小小的方法~~~~,大家有好的意见多提出来哈~~ ......
对flash真的是盲人一个,不知道怎么的去弄,美术功底又不行,难。忙了几天,觉得有点基础还是很有用的:
1.对于as不是很精通的,用2.0脚本就好了,个人觉得比3.0好用,语法不那么严谨,比较随便。
2.全屏Fscommand ("Fullscreen","True"); 在第一帧里就插入这一条语句,可以不用在小的屏幕下看导出的影片,从视觉的角度看 ,我觉得还行吧。
3.采用多个flash来制作,不受到制作的限制,loadMovie(" a.swf" ,0);进行不同flash的加载,挺方便的。 ......
通常,使用Flash来调用.NET组件需用远程调用,实际上我们也可以通过SOCKET直接通信。
具体采用Flash的AMF3或AFM0格式,采用流行的FluorineFx服务器组件,具体代码如下:
依照此用法可以开发网页游戏或其它Flash应用的.NET SOCKET服务器。
using System;
using System.Collections.Generic;
using System.Collections.Specialized;
using System.Text;
using System.Threading;
using System.Net.Sockets;
using System.Net;
using System.Runtime.Serialization;
using System.Runtime.Serialization.Formatters.Binary;
using System.IO;
using FluorineFx;
namespace STCServer
{
class Monitor
{
private int PORT = 8888;
private const int MAXPKSIZE = 4096;
private TcpListener tcpLs = null;
private List<Client> clients = new List<Client>();
  ......
通常,使用Flash来调用.NET组件需用远程调用,实际上我们也可以通过SOCKET直接通信。
具体采用Flash的AMF3或AFM0格式,采用流行的FluorineFx服务器组件,具体代码如下:
依照此用法可以开发网页游戏或其它Flash应用的.NET SOCKET服务器。
using System;
using System.Collections.Generic;
using System.Collections.Specialized;
using System.Text;
using System.Threading;
using System.Net.Sockets;
using System.Net;
using System.Runtime.Serialization;
using System.Runtime.Serialization.Formatters.Binary;
using System.IO;
using FluorineFx;
namespace STCServer
{
class Monitor
{
private int PORT = 8888;
private const int MAXPKSIZE = 4096;
private TcpListener tcpLs = null;
private List<Client> clients = new List<Client>();
  ......
http://code.google.com/p/minimalcomps/
相信大家都会记得keith peters 吧,而现在他又带来一些不错的flash 轻量级的组件。如果有兴趣可以下载这个项目来应用到你的程序当作,相信有个不错的收获。
这套组件建立在快速的创建的基础上,省去了flash自带的皮肤等功能,下面是小小的测试:
package
{
import flash.display.Sprite;
import flash.events.*;
import com.bit101.components.Slider;
import com.bit101.components.ComboBox;
import com.bit101.components.List;
import com.bit101.components.Panel;
public class Main extends Sprite
{
private var mySlider:Slider;
private var myCombox:ComboBox;
private var myList:List;
private var myPannel:Panel;
private var items:Array;
public function Main()
{
init();
}
private function init():void
{
items=["Flash","Flex","Air"];
myCombox=new ComboBox(this,250,200,"Combox",items);
mySlider=new Slider(Slider.HORIZONTAL,this,250,100,onChange);
myList=new List(this,100,100,items);
myP ......
一、写在前面
近来HTML 5被炒得很热,一来因为它是功能强大、实用的下一代开放式WEB标准技术,引起关注是顺理成章的,二来很多人说HTML 5会成为Flash和Silverlight杀手,这在富应用开发界引起不小骚动。我作为一名普普通通的WEB前端开发工程师,HTML、FLASH也算接触不少,而且非常喜爱FLASH,下面是我阅读了大量专题及论坛帖子总结出几点FLASH不亡的理由,希望增加做FLASH开发网友的信心。另外欢迎大家继续就HTML 5与FLASH相关话题展开讨论。
二、FLASH相对HTML5的优势
1、HTML5到目前为止都还没有实现全部功能,走向成熟更是还有一段很长的路要走,在这段时间内,像FLASH这个很早就上路的产品当然也会不断完善以巩固自己的地位。
2、Adobe的开发工具副总裁Dave Story表示“浏览器市场仍然很零散,浏览器之间的兼容问题非常严重”,这点是显而易见的,要不同浏览器厂商短期内完成对HTML5的支持也是不现实的,人家也要核算成本与市场风险的,另外要完全实现HTML5的标准也有一定的困难,比如在视频编码方面就难以统一,因为有些技术是申请了专利的,要在自己浏览器使用这一技术是要交专利费的。
3、HTML5新加的视频与画布标签,其实功能是比较简陋的,试想一下单 ......
一、写在前面
近来HTML 5被炒得很热,一来因为它是功能强大、实用的下一代开放式WEB标准技术,引起关注是顺理成章的,二来很多人说HTML 5会成为Flash和Silverlight杀手,这在富应用开发界引起不小骚动。我作为一名普普通通的WEB前端开发工程师,HTML、FLASH也算接触不少,而且非常喜爱FLASH,下面是我阅读了大量专题及论坛帖子总结出几点FLASH不亡的理由,希望增加做FLASH开发网友的信心。另外欢迎大家继续就HTML 5与FLASH相关话题展开讨论。
二、FLASH相对HTML5的优势
1、HTML5到目前为止都还没有实现全部功能,走向成熟更是还有一段很长的路要走,在这段时间内,像FLASH这个很早就上路的产品当然也会不断完善以巩固自己的地位。
2、Adobe的开发工具副总裁Dave Story表示“浏览器市场仍然很零散,浏览器之间的兼容问题非常严重”,这点是显而易见的,要不同浏览器厂商短期内完成对HTML5的支持也是不现实的,人家也要核算成本与市场风险的,另外要完全实现HTML5的标准也有一定的困难,比如在视频编码方面就难以统一,因为有些技术是申请了专利的,要在自己浏览器使用这一技术是要交专利费的。
3、HTML5新加的视频与画布标签,其实功能是比较简陋的,试想一下单 ......
原文:How to dispatch an event from a custom item renderer
从 MXML 组件中分派事件并不困难,但是想要从 itemRenderer 中分派事件就没有那么直接了。下文中,我们将回顾一下这两种情况的处理方式并找出一个合适的解决方案。
正常情况下,当你想从 MXML 组件中分派一个事件时会使用如下的元数据标签:
<!-- 写在某个组件中 -->
<mx:metadata>[Event(name="myEvent")]</mx:metadata>
元数据标签让你能在另一个类中以如下方式监听事件:
<!-- 写在调用上面定义的那个组件的类中 -->
<nw:somecomponent myEvent="onSomeEventHandler(event)"/>
最后,当你想在组件中分派事件时可以手工的使用 dispatchEvent() 方法来分派。
但是如果你是想从一个作为 itemRenderer 的组件中分派事件的话会如何呢?考虑一下以下的情况:
在 Flex 应用程序中新建一个 List 组件。然后新建一个包含有 RadioButton 的组件用于 List 的 itemRenderer。当用户单击 RadioButton 时,可能你会想让他的父组件 List 产生一个事件。
但是如下的代码会产生一个编译器错误,因为 List 组件并没有“myEvent”属性:
<!-- 会产生一个编译器错误 ......