FLEX 3里写的ActionScrip

2020-01-08 00:37:43 浏览数 (1)

1. 建立AS3的脚本文件,如下图:

代码是用FLEX3里建立的AS 3代码,具体的操作请参考以前的文章,保存的文件的名字为类名.as

2. 建立fla文件,名字也是类名.fla.如下图:

如果不把你在代码里用的组件拖动到库里,会出现以下的错误:

3. 解决方法:直接从组件的面板里拖动所需要的组件到舞台上,然后删除,所需要的组件就存放到库面板里了。然后直接运行就OK了,如下图:

4. 完整代码,作用是List的使用测试。

package {

//  导入相关的类,需要实现设计好,知道自己设计的项目里需要什么类

    import fl.controls.Button;

import fl.controls.Label;

import fl.controls.List;

import fl.data.DataProvider;

import flash.display.Sprite;

import flash.events.*;

public class listtest extends Sprite

{

//定义所需要的对象,如按钮,列表,标签等所需要的对象       

//define the object

private var left_list:List;

private var right_list:List;

private var right_btn:Button;

private var left_btn:Button;

 //构造函数

public function listtest()

{

createcompenent();

setupCompenent();

}

//为列表提供数据源

//setup the data

private function setupCompenent():void

{

var dp:Array = new Array();

var i:uint;

var count:uint = left_list.rowCount * 2;

for (i =0 ;i< count;i )

{

dp.push({label:"员工" i});

}

left_list.allowMultipleSelection = true ;

left_list.dataProvider = new DataProvider(dp);

}

//创建组件,并初始化他们在舞台上的位置      

//setup the position of the object

private function createcompenent():void

{

right_btn = new Button();

left_btn = new Button();

left_list = new List();

right_list = new List();

var leftlabel:Label = new Label();

var right_label:Label = new Label();

right_btn.move(135,45);

left_btn.move(135,85);

left_list.move(10,32);

right_list.move(200,32);

leftlabel.move(10,10);

right_label.move(200,10);

right_btn.label = ">>";

left_btn.label = "<<";

right_btn.width = 40 ;

left_btn.width = 40;

leftlabel.text = "所有员工";

right_label.text = "所选择的员工";

left_btn.addEventListener(MouseEvent.CLICK,moveright);

right_btn.addEventListener(MouseEvent.CLICK,movetoleft);

//把对象添加到舞台上,与AS2是不一样的。          

this.addChild(left_btn);

this.addChild(right_btn);

this.addChild(left_list);

this.addChild(right_list);

this.addChild(leftlabel);

this.addChild(right_label);

}

//定义事件(鼠标单击相应的按钮后触发)

private function movetoleft(event:MouseEvent):void

{

if(left_list.selectedIndex >= 0)

{

right_list.addItem(left_list.selectedItem);

left_list.removeItem(left_list.selectedItem);

}

}

private function moveright(event:MouseEvent):void

{

if(right_list.selectedIndex >= 0)

{

left_list.addItem(right_list.selectedItem);

right_list.removeItem(right_list.selectedItem);

}

}

}

}

0 人点赞