以下是action script 2 代码:
stop();
import mx.services.WebService;
import mx.services.PendingCall;
import flash.external.ExternalInterface;
Stage.scaleMode = "noScale";
Stage.align = "TL";
var _this:MovieClip = this;
//web服务的服务说明地址
var WSDL:String = "articleservice.asmx?WSDL";
//Param是WEB服务方法中的参数值
var Param:Object = {
pageSize:-1,
pageIndex:1,
};
//分页数据信息
var CurrentPageSize:Number = 0;
var PageSize:Number = 10;
var PageIndex:Number = 1;
var RecordCount:Number = 0;
var PageCount:Number = 0;
//图片数组和按钮数组
var Articles:Array = new Array();
var article_pos:Number = 0;
//新闻滚动框
var view_box:MovieClip = _this.createEmptyMovieClip("view_box",_this.getNextHighestDepth());
with(view_box)
{
_x = 100;
_y = 90;
}
//新闻滚动框遮罩
var view_mask:MovieClip = _this.createEmptyMovieClip("view_mask",_this.getNextHighestDepth());
with(view_mask)
{
beginFill(0xFF0000);
movieTo(0,0);
lineTo(210,0);
lineTo(210,30);
lineTo(0,30);
endFill();
_x = 100;
_y = 90;
}
view_box.setMask(view_mask);
//加载loading效果动画
var loading:MovieClip = view_box.attachMovie("loading","loading",view_box.getNextHighestDepth());
with(loading)
{
_x = (view_mask._width - _width)/2;
_y = (view_mask._height - _height)/2;
}
//新闻标题样式
var title_format:TextFormat = new TextFormat();
title_format.color = 0xab996f;
function LoadArticles(psize:Number) {
Param["pageSize"] = psize;
//创建web服务对象
var service:WebService = new WebService(WSDL);
//调用web服务提供的方法GetPager,返回一个PendingCall对象
var articleCall:PendingCall = service.GetPager(
Param["pageSize"],
Param["pageIndex"]
);
articleCall.onResult = function(result) {
//加载完成后,移除loading动画
loading.removeMovieClip();
RecordCount = result.Count;
PageCount = Math.ceil(RecordCount/PageSize)
var list:Array = result.ListData;
var p1:MovieClip = view_box.createEmptyMovieClip("p1",view_box.getNextHighestDepth());
var p2:MovieClip = view_box.createEmptyMovieClip("p2",view_box.getNextHighestDepth());
with(p1)
{
_x = 0;
}
for (var i = 0; i<list.length; i++) {
var info:Object = list[i];
var m:Object = title_format.getTextExtent(info.Title);
//创建p1
var _article:MovieClip = p1.createEmptyMovieClip("article_info",p1.getNextHighestDepth());
with(_article)
{
_x = article_pos;
_y = 0;
}
_article.url = info.Url;
_article.onRelease = function ()
{
trace(this.url);
getURL(this.url,"_blank");
}
_article.onRollOver = function ()
{
clearInterval(_interval);
}
_article.onRollOut = function ()
{
AutoPlay();
}
var _textbox:TextField = _article.createTextField("article_info",_article.getNextHighestDepth(),0,0,m.width,20);
_textbox.autoSize = true;
_textbox.text = info.Title;
_textbox.setTextFormat(title_format);
//创建p2
var _article_2:MovieClip = p2.createEmptyMovieClip("article_info",p2.getNextHighestDepth());
with(_article_2)
{
_x = article_pos;
_y = 0;
}
_article_2.url = info.Url;
_article_2.onRelease = function ()
{
trace(this.url);
getURL(this.url,"_blank");
}
_article_2.onRollOver = function ()
{
clearInterval(_interval);
}
_article_2.onRollOut = function ()
{
AutoPlay();
}
var _textbox:TextField = _article_2.createTextField("article_info",_article_2.getNextHighestDepth(),0,0,m.width,20);
_textbox.autoSize = true;
_textbox.text = info.Title;
_textbox.setTextFormat(title_format);
article_pos += m.width + 12;
Articles.push(_article);
}
p2._x = article_pos;
AutoPlay();
};
articleCall.onFault = function(fault) {
trace(fault);
};
}
_this.LoadArticles(PageSize);
var _interval = null;
function AutoPlay()
{
_interval = setInterval(BeginPlay,30);
}
function BeginPlay()
{
view_box._x -= 1;
if(-view_box._x >= view_box._width / 2)
{
view_box._x = 0;
}
}