📄 page.as
字号:
/**
* Description here..
* @author crlnet
* @version 1.1
*/
package crlclr {
import crlclr.data.HotAreaInfo;
import crlclr.data.InnerMediaInfo;
import crlclr.data.PageData;
import crlclr.Interface.IPage;
import crlclr.Interface.IResizeable;
import crlclr.ui.NumberContainer;
import flash.display.Shape;
import flash.geom.Rectangle;
import flash.display.LoaderInfo;
import flash.display.Bitmap;
import flash.display.Graphics;
import flash.display.Loader;
import flash.display.Sprite;
import flash.net.URLRequest;
import flash.events.*;
public class Page extends BlankPage{
public var isRight:Boolean=false;
private var data:PageData;
private var loader:Loader;
private var shadow:shade;
private var Qmask:Shape;
private var thumb:Sprite;
private var ipage:Sprite;
private var hotAreaContainer:Sprite;
private var innerMediaContainer:Sprite;
public function Page(w:Number,h:Number){
super(w,h);
}
/**
* 创建载体;
*/
protected override function createChildren():void{
thumb=new Sprite();
ipage=new Sprite();
hotAreaContainer=new Sprite();
innerMediaContainer=new Sprite();
addChild(thumb);
addChild(ipage);
addChild(innerMediaContainer);
addChild(hotAreaContainer);
loader=new Loader();
//addChild(loader)
loader.contentLoaderInfo.addEventListener(IOErrorEvent.IO_ERROR,IOErrorHander)
loader.contentLoaderInfo.addEventListener(Event.COMPLETE,completeHander);
loader.contentLoaderInfo.addEventListener(Event.INIT,initHander);
}
/**
* 一些属性;
* @param data
* @return
*/
public function set Data(data:*):void{
this.data=data;
init();
}
/**
*
*/
public function init():void{
this.createHotArea();
this.loadInnerMedia();
this.createMaskAndInnerShadow();
}
/**
* 创建遮照,以便显示出所需的内容;
*/
public function createMaskAndInnerShadow():void{
Qmask=new Shape();
Qmask.graphics.beginFill(0xFFFFFF*Math.random(),1);
Qmask.graphics.drawRect(0,0,w,h);
Qmask.graphics.endFill();
addChild(Qmask);
this.mask=Qmask;
this.shadow=new shade();
addChild(this.shadow);
this.shadow.height=this.h;
if(this.isRight){
this.shadow.scaleX=-1.0;
}else{
this.shadow.x=this.w;
}
}
/**
* 加载缩略图与媒体图,分开会清析一点;
*/
public function loadThumb():void{
var urlRequest:URLRequest=new URLRequest(data.Thumb);
loader.load(urlRequest);
}
public function loadIpage():void{
var urlRequest:URLRequest=new URLRequest(data.Thumb);
loader.load(urlRequest);
}
private function completeHander(event:Event){
//trace(event)
}
private function IOErrorHander(event:IOErrorEvent):void{
event.target.loader.close();
trace("文件没找到"+event.stopImmediatePropagation())
}
private function initHander(event:Event):void{
var loadinfo:LoaderInfo=event.target as LoaderInfo;
thumb.addChild(loadinfo.content);
if(this.isRight&&loadinfo.width>2*(this.w-10)){
thumb.x=-w;
}
}
/**
*
*/
public function createHotArea(){
var hotAreaList:Array=this.data.HotAreaList;
var hotArea:Sprite;
for each(var i:HotAreaInfo in hotAreaList){
hotArea=new Sprite();
/*var g:Graphics=hotArea.graphics;
g.beginFill(0xf2f2f2,.8);
g.drawRect(i.Coords);*/
hotAreaContainer.addChild(hotArea);
}
}
/**
*
*/
public function loadInnerMedia(){
var innerMediaList:Array=this.data.InnerMediaList;
for each(var i:InnerMediaInfo in innerMediaList){
}
}
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -