JSFL入门指导 .

JSFL入门
JSFL指Flash JavaScript,是JavaScript脚本文件,是用来扩展Flash IDE的重要工具。学会它、熟练使用它之后你会惊讶的发现,哇,原来可以这么高效率的做Flash啊!下面我们来看一看怎么使用JSFL:

不知道各位朋友有没有使用过Flash IDE中的“历史记录面板”?如果没有用过的话,赶紧Ctrl+F10调出来看一看吧,因为本文的内容将从它身上开始。

在Flash IDE中(本人使用Flash CS3 Professional)按下R键(矩形绘制工具的快捷键),在舞台上拖动鼠标绘制出一个矩形。观察“历史记录面板”,你会发现面板中添加了一个名为“矩形”的动作。选中“矩形”动作,“历史记录面板”右下角那个磁盘图标按钮将被激活,点击该按钮保存命令为“DrawRect”。接下来,删除刚刚在舞台上绘制的那个矩形,然后选择Flash菜单栏的“命令”菜单,你会发现弹出菜单中多了一个名为“DrawRect”的选项,点击“DrawRect”选项看看效果吧。

如果你以前从来没接触过JSFL,你肯定会疑问:“DrawRect”选项是怎么跑到“命令”菜单中去的?点击它后舞台上立即绘制出了一个矩形,这是什么原理?下面我们就来探索一下其中的奥秘。

打开C:/Documents and Settings/Brant/Local Settings/Application Data/Adobe/Flash CS3/zh_cn/Configuration/Commands (注意,Local Settings文件夹默认是隐藏的,你需要显示隐藏文件才可以看到)。在这个文件夹中你会发现一个名为“DrawRect.jsfl”的文件,用文本编辑工具打开它(本人使用FlashDevelop或UtrlEdit打开),看看里面的内容,看不懂没关系,先了解一下里面的代码可以在舞台上绘制一个矩形就OK,这个东西就是jsfl。接下来,你该在Flash IDE中按F1输入“jsfl”查看一下相关帮助文档了。首先看一下有关JSFL的作用说明,然后重点关注“扩展Flas -> 对象”里的内容,看得差不多了之后,在帮助里输入“library”(或Document、Item、outputPanel等等词汇),仔细认真的看一看“扩展Flas -> 对象”里的东西。不要惊讶“居然有如此多的内容!”。嗯,这部分知识点的内容的确挺多的,都是Flash IDE的JavaScript API,使用这些API可以实现Flash IDE环境中的所有动作。要完全研究透它,需要学习一下JavaScript,不过不用紧张,很简单,因为JS跟AS基本上一样,关键字、语法、结构都是统一遵循ECMA Script标准的,跟据AS习惯,你猜着写也能写出JS代码来,学习曲线会比较平滑。好了,那些内容你自己慢慢研究吧,这里我就不等你看完,下面我将写两个简单的例子来示范一下怎么使用JSFL:

【注】下文中目录C:/Documents and Settings/Brant/Local Settings/Application Data/Adobe/Flash CS3/zh_cn/Configuration/Commands统一简称为Commands



示例一,BitmapBatRename(给库中的图片批量命名):


第一步:新建一个文本文档,粘贴如下代码到文档中,保存到Commands目录下,保存名字为“BitmapBatRename.jsfl”。注意扩展名是jsfl而不是txt哦。



var doc = fl.getDocumentDOM();

var uxi = doc.xmlPanel(fl.configURI + "Commands/Rename.xml");



if(uxi.dismiss == "accept")

{

var items = doc.library.getSelectedItems();

for(var i = 0; i<items.length; i++)

{

items[i].name = uxi.prefixName + i;

}

}





第二步:新建一个文本文档,粘贴如下代码到文档中,保存到Commands目录下,保存名字为“Rename.xml”。注意扩展名是xml哦。



<?xml version="1.0" encoding="utf-8"?>

<dialog buttons="accept,cancel" title="Bat Rename Tool" >

<label value="请输入名称前缀"/>

<textbox id="prefixName"/>

</dialog>





第三步:新建一个Flash文档,导入一组图片到库里,选中库中的一张、几张或者全部图片,选择“命令-> BitmapBatRename”,在弹出的对话框里输入一个想要的名字,然后点击确定,看一看库中的图片的名字有什么变化。OK,示例一结束。





示例二,GetLibraryItemProperty(将库中的元件的属性输出到输出面板,并允许保存为xml):


第一步:新建一个文本文档,粘贴如下代码到文档中,保存到Commands目录下,保存名字为“GetLibraryItemProperty.jsfl”。



var doc = fl.getDocumentDOM();

var lib = doc.library;

var items = lib.items;



fl.outputPanel.clear();



fl.trace("<?xml version=/"1.0/" encoding=/"utf-8/"?>");

fl.trace("<list>");

for(var i = 0; i < items.length; i++)

{

var type = items[i].itemType;

var name = items[i].name;

var className = items[i].linkageClassName;

fl.trace(" <item type=" + "/"" + type + "/"" + " name=" + "/"" + name + "/""+ " className=" + "/"" + className + "/"" + "/>");

}

fl.trace("</list>");



var xui = doc.xmlPanel(fl.configURI + "Commands/saveOutputPanel.xml");

if(xui.dismiss == "accept")

{

fl.outputPanel.save(xui.url);

}



第二步:新建一个文本文档,粘贴如下代码到文档中,保存到Commands目录下,保存名字为“saveOutputPanel.xml”。



<dialog buttons="accept, cancel" title="保存输出面板信息" >

<hbox>

<label value="URL:" />

<textbox id = "url" size="30" multiline="false"/>

<buttons="accept, cancel"/>

<hbox>

</dialog>



第三步:新建一个Flash文档,导入一组图片到库里,先给它们都取上名字,添加好导出Action类,然后选择“命令-> GetLibraryItemProperty”。在保存文件的对话框中填入文件路径,点击保存之后在指定的路径下就可以看到一个xml了,它记录了库中所有元件的“元件类型”、“元件名称”和“链接类名”。【注意】保存文件的时候填入的文件路径的写法哦:例如,你想将生成的xml保存到F盘下的myxml文件夹中,保存的文件名为“list.xml”,则路径如下填写:file:///F|/myxml/list.xml。OK,示例二结束。



JSFL功能很强大,更多功能请各位自己去慢慢探索,本文仅仅作为不懂的朋友入门之用。在学习JSFL的过程中有一个窍门——在IDE中随意操作,保存历史记录,然后观察生成的JSFL代码来学习。Over!
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值