編好一個類之后,保存格式為.AS.這時候如果你要使用它,應該怎么辦呢?
把它放到MacromediaFlash MX 2004enFirst RunClasses目錄下.
保存類的時候應該注意,文件名一定要和類名一致.
調(diào)用的時候,就象調(diào)用其它內(nèi)置類一樣的調(diào)用.
比如我曾經(jīng)寫的一個類Kmath,用作FLASH內(nèi)置類--MATH類的擴充,其內(nèi)容如下:
class Kmath extends Math{
public function Kmath () {
}
//求余數(shù)
//modf(被除數(shù),除數(shù))
static public function modf(x:Number,y:Number):Number
{if(y!=0){
return x-int(x/y)*y}
else{return Number.NaN}
}
//奇偶驗證(偶數(shù)為真)
static public function even(x:Number):Boolean
{
if((x-int(x/2)*2)==0){return true}
else{return false}
}
//求弧度
//rad(角度值)
static public function rad():Number
{return deg*Math.PI/180
}
//以角度計算的三角函數(shù)
//sinD(角度);cosD(角度);tanD(角度)
static public function sinD():Number
{return Math.sin(deg*Math.PI/180)
}
static public function cosD():Number
{return Math.cos(deg*Math.PI/180)
}
static public function tanD():Number
{return Math.tan(deg*Math.PI/180)
}
//返回值為角度的反三角函數(shù)
//asinD(數(shù)值);acosD(數(shù)值);atanD(數(shù)值)
static public function asinD(x:Number):Number
{return Math.asin(x)*180/Math.PI
}
static public function acosD(x:Number):Number
{return Math.acos(x)*180/Math.PI
}
static public function atanD(x:Number):Number
{return Math.atan(x)*180/Math.PI
}
//計算兩點直線的傾斜角(1為起點,2為終點)
//atan2D(點1橫坐標值,點1縱坐標值,點2橫坐標值,點2縱坐標值)
static public function atan2D(x1:Number,y1:Number,x2:Number,y2:Number):Number
{
return Math.atan((y2-y1)/(x2-x1))*180/Math.PI
}
//計算兩點距離
//dist(點1橫坐標值,點1縱坐標值,點2橫坐標值,點2縱坐標值)
static public function dist(x1:Number,y1:Number,x2:Number,y2:Number):Number
{
return Math.sqrt(Math.pow((x1-x2),2)+Math.pow((y1-y2),2))
}
//返回X到Y之間的隨機整數(shù)
//random(較小數(shù),較大數(shù))
static public function rand(x:Number,y:Number):Number
{
return x+random(y-x)
}
}
public function Kmath () {
}
//求余數(shù)
//modf(被除數(shù),除數(shù))
static public function modf(x:Number,y:Number):Number
{if(y!=0){
return x-int(x/y)*y}
else{return Number.NaN}
}
//奇偶驗證(偶數(shù)為真)
static public function even(x:Number):Boolean
{
if((x-int(x/2)*2)==0){return true}
else{return false}
}
//求弧度
//rad(角度值)
static public function rad():Number
{return deg*Math.PI/180
}
//以角度計算的三角函數(shù)
//sinD(角度);cosD(角度);tanD(角度)
static public function sinD():Number
{return Math.sin(deg*Math.PI/180)
}
static public function cosD():Number
{return Math.cos(deg*Math.PI/180)
}
static public function tanD():Number
{return Math.tan(deg*Math.PI/180)
}
//返回值為角度的反三角函數(shù)
//asinD(數(shù)值);acosD(數(shù)值);atanD(數(shù)值)
static public function asinD(x:Number):Number
{return Math.asin(x)*180/Math.PI
}
static public function acosD(x:Number):Number
{return Math.acos(x)*180/Math.PI
}
static public function atanD(x:Number):Number
{return Math.atan(x)*180/Math.PI
}
//計算兩點直線的傾斜角(1為起點,2為終點)
//atan2D(點1橫坐標值,點1縱坐標值,點2橫坐標值,點2縱坐標值)
static public function atan2D(x1:Number,y1:Number,x2:Number,y2:Number):Number
{
return Math.atan((y2-y1)/(x2-x1))*180/Math.PI
}
//計算兩點距離
//dist(點1橫坐標值,點1縱坐標值,點2橫坐標值,點2縱坐標值)
static public function dist(x1:Number,y1:Number,x2:Number,y2:Number):Number
{
return Math.sqrt(Math.pow((x1-x2),2)+Math.pow((y1-y2),2))
}
//返回X到Y之間的隨機整數(shù)
//random(較小數(shù),較大數(shù))
static public function rand(x:Number,y:Number):Number
{
return x+random(y-x)
}
}
把這段代碼保存為Kmath.as,并放在MacromediaFlash MX 2004enFirst RunClasses文件夾中,然后,如果你要調(diào)用這個類種的方法,比如說,我們要求余數(shù),就只需要在動作面板里輸入類似:Kmath.modf(3,4).這樣的代碼.
你也可以在MacromediaFlash MX 2004enFirst RunClasses文件夾中新建一個專門放置自定義類的文件夾,比方為myClass
那么再調(diào)用剛剛那個類的方法的話,就要類似myClass.Kmath.modf(3,4).這樣的代碼了 .
以上.