编辑:
对不起,我没有仔细看你的问题。
您的问题是 *.as 文件不知道您的组件是什么:
您需要将组件传递给函数,如下所示:
public function checkCode(txtToegangscode:TextInput, lblFeedback:Label):void{
if (txtToegangscode.text == "moia") {
lblFeedback.text = "ok";
txtToegangscode.enabled = false;
btnGaNaarPersonen.visible = true;
btnGaVerder.visible = false;
} else {
lblFeedback.text = "wrong";
}
这将允许您的 *.as 文件访问这些组件中的属性。
老的:
这是文档: http://livedocs.adobe.com/flex/3/html/help.html?content= usingas_4.html
您可以使用标记的源属性在 Flex 应用程序中包含外部 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">
<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>
标签的 source 属性支持相对路径和绝对路径。
标签的 source 属性和 include 指令以不同的方式引用文件。
以下是标记的源属性中引用的外部文件的有效路径:
相对 URL,例如 ../myscript.as。不以斜杠开头的相对 URL 相对于使用它的文件进行解析。如果标签包含在“mysite/myfiles/myapp.mxml”中,系统将搜索“mysite/IncludedFile.as”。
对于 ActionScript 包含指令,您只能引用相对 URL。Flex 在源路径中搜索导入的类和包。Flex 不会在源路径中搜索使用 include 指令或标记的源属性包含的文件。