flex学习 自定义事件
我个人觉得这个自定义时间封装性很好,但是有点复杂,不建议简单编程中使用
创建一个MXML组件,建自定义事件
<?xml version="1.0" encoding="utf-8"?>
<mx:VBox xmlns:mx="http://www.adobe.com/2006/mxml">
<mx:Script>
<!--[CDATA[
private function clickHandler():void{
// var myEvent:Event = new Event("nameDataShared");
var myEvent:TextEvent = new TextEvent("nameDataShared");
myEvent.text = myNameInput.text;
dispatchEvent(myEvent);
}
]]-->
</mx:Script>
<!--Metadata标签并不编译到可执行代码中,但它会提供信息控制你的代码如何编译。
不能把ActionScript或MXML代码放到Metadata标签中,它是特殊的指令。
告诉编译器正在创建一个自定义事件并命名。如:[Event(name="nameDataShared")]。这个方括号叫做meta标签。
-->
<mx:Metadata>
// [Event(name="nameDataShared")]
[Event(name="nameDataShared", type="flash.events.TextEvent")]
</mx:Metadata>
<mx:Label text="Name Dispatcher" fontSize="16"/>
<mx:HBox>
<mx:Label text="Enter Your Name"/>
<mx:TextInput id="myNameInput"/>
</mx:HBox>
<mx:Button label="Click ME" click="clickHandler()"/>
</mx:VBox>
创建主程序文件
<?xml version="1.0" encoding="utf-8"?>
<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml" layout="absolute" xmlns:components="components.*">
<mx:Script>
<!--[CDATA[
[Bindable]
private var sharedNameData:String = "Default Name";
function sharedNameDataHandler(evt:TextEvent):void{
sharedNameData = evt.text;
}
]]-->
</mx:Script>
<components:NameDispatcher x="35" y="40" nameDataShared="sharedNameDataHandler(event)"/>
<components:ReceiveName x="35" y="120" myName="{sharedNameData}"/>
</mx:Application>
创建一个接收组件
<?xml version="1.0" encoding="utf-8"?>
<mx:VBox xmlns:mx="http://www.adobe.com/2006/mxml">
<mx:Script>
<!--[CDATA[
[Bindable]
public var myName:
相关文档:
1. 调用窗体
A 窗体是一个applicaton窗体 B 窗体是自定义窗体(类似Dialog之类的窗体,本身并不能独立运行)
A 窗体 片断代码如下:
<mx:Script>
<!--[CDATA[
import mx.containers.TitleWindow;
import mx.managers.PopUpManager;
function ShowDetailDialog(){
var oInitObj:Object = new Object();
......
http://www.cnblogs.com/beniao/category/190537.html
WebORB for .NET : http://www.cnblogs.com/beniao/category/190537.html
这个网页也有非可视化组件、数据可视化组件、打印组件以及行为效果组建等:http://examples.adobe.com/flex3/componentexplorer/explorer.html ......
1.弹出新窗口
Flex通过PopUpManager类来实现弹出新窗口:
先设置好要弹出窗口的页面,然后在主窗口中先new出弹出窗口的对象,然后可以对弹出窗口的属性进行
赋值,
var genggai : GengGaiWindow = new GengGaiWindow();
genggai.logId = adg.selectedI ......
1.在<Object>和<embed>中设置flashVars参数
,例如:
<object
id=’mySwf’ classid=’clsid:D27CDB6E-AE6D-11cf-96B8-444553540000′
codebase=’http://fpdownload.macromedia.com/get/flashplayer/current/swflash.cab’
height=’100%’ width=’10 ......
public function submit():void{
//要请求的URL
var request:URLRequest = new URLRequest("
http://localhost:8086/test.do
") ;
var load:URLLoader = new URLLoader() ;
//URL参数
& ......