博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
flex include和import
阅读量:4943 次
发布时间:2019-06-11

本文共 3095 字,大约阅读时间需要 10 分钟。

flex includeimport

ActionScript代码

为了让你的MXML代码可读性增强,你可以在<mx:Script>标签内引用ActionScript代码文件,而不是把大块的代码都插入到<mx:Script>里。引用ActionScriptincludeimport两种方式。

ActionScriptincludeimport有着截然不同的区别。Include是将一个文件中的代码拷贝到另一个文件中去,也就是将代码拷贝到include语句所在的位置上。Import是添加了对类或包的引用,这样你就可以访问其他的类中定义的对象和属性。通过import导入的代码文件必须存在于你导入的路径上。通过include导入代码文件,输入的文件地址必须与主文件要能在相对路径上寻找到,或者通过绝对路径也可以。

你可以在你的Flex应用程序中使用include语句和< mx:Script source="filename">标签来添加ActionScript代码。

你可以在<mx:Script>内使用import语句来引用你的Flex应用程序中可能需要的类和包。

注:一个是引入包和类,一个是引入代码文件

你可以在<mx:Script>标签内通过引用外部的ActionScrit文件来引入ActionScript代码。在编译的时候,编译器会将整个代码文件中的内容拷贝到你的MXML程序中,就像你真的在标签内写了代码一样。在<mx:Script>代码块中,ActionScript语句只能在函数内部。

引入的代码文件也可以定义静态变量和命名空间,引入其他的ActionScript文件,导入声明定义,和使用命名空间。但你不能将要导入的文件定义为类。

引入的ActionScript文件中定义的变量和函数可以允许给MXML文件中的任何组件使用。引入的ActionScript文件的名字不能与导入的ActionScript类的名字一样。

Flex可以访问导入的文件中的变量和函数,但不能添加新的类(本人理解为被导入的文件不能是个类),因为MXML文件本身就是一个类。

导入的AS文件不一定非要和MXML文件在同一个目录下。然而,你必须让你的程序能够在目录结构上正确识别到你的ActionScript代码文件。

下面有两种方法能在Flex应用程序中引入外部的ActionScript文件:

§ 使用<mx:Script>标签的source属性。这是引入外部ActionScript代码文件的首选方法。

§ <mx:Script>代码块中使用include语句

使用source属性来引入ActionScript文件

你可以在Flex应用程序中使用<mx:Script>标签的source属性来引入外部的ActionScript文件。这种方式可以让你的MXML文件中的代码不那么零乱而且还可以提高代码的可重用性。

不要让代码文件与程序文件的名字一样。这样会让编译器报错。下面的是IncludedFile.as文件的内容:

代码如下:

// usingas/includes/IncludedFile.as

public function computeSum (a:Number, b:Number):Number {

return a + b;

}

下面例子中引入了IncludedFile.as文件中的内容。该文件是在引入它的文件的子目录下。

代码如下:

<?xml version="1.0"?>

<!-- usingas/SourceInclude.mxml -->

<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml" layout="absolute">

<?xml version="1.0"?>

<!-- usingas/SourceInclude.mxml -->

<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml" layout="absolute">

<mx:Script source="includes/IncludedFile.as"/>

<mx:TextInput id="ta1st" text="3" width="40" x="170" y="24" textAlign="right"/>

<mx:TextInput id="ta2nd" text="3" width="40" x="170" y="52" textAlign="right"/>

<mx:TextArea id="taMain" height="25" width="78" x="132" y="82" textAlign="right"/>

<mx:Button id="b1" label="Compute Sum"

click="taMain.text=String(computeSum(Number(ta1st.text), Number(ta2nd.text)));"

x="105"

y="115"

/>

<mx:Label x="148" y="52" text="+" fontWeight="bold" fontSize="17" width="23"/>

</mx:Application>

<mx:Script>标签的source属性支持相对路径和绝对路径两种方式

注:你不能在同一个<mx:Script>标签内既使用source属性又写ActionScript代码。如果需要这么做的话,需要使用两个<mx:Script>标签。

Include指令一个ActionScript语句,可以把指定的文件中的内容拷贝到MXML文件中去。Include指令的语法如下所示:

include "file_name";

下面的例子中引入了myfuncitons.as文件:

代码如下:

<?xml version="1.0"?>

<!-- usingas/IncludeASFile.mxml -->

<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml">

<mx:Script><![CDATA[

/* myfunctions.as文件定义了两个返回字符串的函数 */

include "includes/myfunctions.as";

]]></mx:Script>

<mx:Button id="myButton" label="Call Methods in Included File"

click="ta1.text=doSomething();ta1.text+=doSomethingElse()"

/>

<mx:TextArea width="268" id="ta1"/>

<mx:Button label="Clear" click="ta1.text=''"/>

</mx:Application>

你可以让每个include指令都指向单一个文件,也可以使用任意多的include指令语句。Include指令可以嵌套使用。通过include指令引入的文件中也可以通过使用include指令引入其他的文件。

转载于:https://www.cnblogs.com/JPAORM/archive/2011/04/13/2509818.html

你可能感兴趣的文章
外部操作获取iframe的东西
查看>>
web前端基础之Bootstrap(三) - 插件
查看>>
十进制四则运算计算器代码,输入为字符串
查看>>
[BZOJ2502]清理雪道
查看>>
[POJ3096]Surprising Strings
查看>>
笔记《JavaScript 权威指南》(第6版) 分条知识点概要1—词法结构
查看>>
jsonp/ajax 自己的一些总结
查看>>
用localStorage来存储数据的一些经验
查看>>
Shell脚本实现模拟并发及并发数控制
查看>>
FFmpeg学习3:播放音频
查看>>
c#划分目录和文件(小白的一点经验)
查看>>
PHP23 AJAX分页
查看>>
连接本地虚拟机和数据库很慢
查看>>
幂取模
查看>>
HDU4587--TWO NODES(无向图割点,暴力出奇迹)这是我见过的时间最长的题。。。
查看>>
select2赋值需要注意
查看>>
[NOIp 2009]Hankson的趣味题
查看>>
Exynos4412开发板更换开机logo图片
查看>>
mysql常用命令
查看>>
关于《侏罗纪世界》你应该知道的18件事
查看>>