AS3 基礎知識

2021-06-05 10:34:59 字數 3236 閱讀 6301

1:addchild相當於2.0裡面把庫中的元件載入到場景中,用了addchild後我們畫的那個圓就顯示在場景中了,與之對應的是removechild,是從場景中刪除

2:庫中的元件與類的鏈結?

我猜,元件就好比是類的例項,給元件取名,是為了方便我們程式來引用。

3:文件類?

文件類就相當於第一幀的位置,這樣我們就不用在fla檔案裡寫**了,所有**都寫在as檔案裡,達到了介面和**的分離。

4:利用反射方式來載入元件,主要是利用 getdefinitionbyname(元件名稱:string)

for(var i=1;i<=2;i++)

5: 事件監聽方式:在as3.0中,一律用addeventlistener

_btn.addeventlistener(mouseevent.click,btnclickhandler);

function btnclickhandler(event:mouseevent): void

經常有些偵聽我們用過一次後可以就不會再用了,那麼為了節省資源,我們要將這些偵聽刪除掉,要偵除偵聽這們用這樣的方法:

_btn.removeeventlistener(mouseevent.click,insclickhandler);//刪除偵聽

6:訊息機制(類與類之前也是可以偵聽的),dispatchevent就是用來傳送訊息的。如果我們寫的這個類不繼承sprite是不能用的,凡是從eventdispatcher繼承下來的類就可以使用這個方法.

package net.smilecn

private function clickhnadler(event:mouseevent):void} }

將庫中的乙個mc鏈結到myclass這個類上(方法引數前面章節)再修改之前的文件類:

package net.smilecn

private function closehandler(event:event):void} }

flash的event類裡面自帶的close事件,其實就是個字串,我們也可以自己定義字串,比如這樣:

dispatchevent(new event(「message」));

myclass.addeventlistener("message",closehandler);

7:事件傳遞引數

在as3.0版本中,發訊息的時候傳引數,要去寫乙個類去繼承event這個類,

package net.smilecn

public function get param():object }}

類繼承了event這個類,在構造方法裡有乙個super(type),super的意思是執行父類的構造方法,也就是執行event的構造,

type是訊息的型別,就是訊息的名字,乙個字串,object就是我們要傳的引數要用到的乙個變數,是乙個物件,我們知道

物件是很方便的,可以儲存1到多個引數,下面是乙個get方法,通過param這個名字去取_object這個對像的值。

怎麼用這個myevent類?

package net.smilecn

private function clickhnadler(event:mouseevent):void

,這個引數就是我們傳進去的物件,這個物件有兩個屬性值,

//乙個叫a,值為100,乙個叫b,值為200;

dispatchevent(new myevent("myclassmessage",));}}

}8:mvc模式

mvc模式是‖model-view-controller‖的縮寫,中文翻譯為‖模式-檢視-控制器‖。mvc應用程式總是由這三個部分組成。

event(事件)導致controller改變model或view,或者同時改變兩者。只要controller改變了models的資料或者屬性,所有

依賴的view都會自動更新。 mvc模式能使介面(viwe)和資料(model)能有效的分開,由控制器(controller)去控制。

model按照我的理解是資料,就是所有的共用資料都是儲存在model裡面的

9:loader載入類:

loader 類可用於載入 swf 檔案或影象(jpg、png 或 gif)檔案

檔案的文件類,匯出 main.swf 檔案

package net.smilecn.studyloader

public function getmainparam(param:string)}}

檔案的文件類,載入main.fla的匯出檔案

import flash.display.loader;

import flash.net.urlrequest;

import flash.events.event;

import flash.events.progressevent;

private var subloader:loader;

subloader = new loader();

subloader.load(new urlrequest("main.swf"));

subloader.contentloaderinfo.addeventlistener(progressevent.progress, progresshandler);

subloader.contentloaderinfo.addeventlistener(event.complete, completehandler);

private function completehandler(event:event):void

10:urlloader與後台互動[舉例:可以實現配置檔案的讀取]

package net.smilecn.studyurlloader

private function loadcompletehandler(event:event):void}}

11: 共享資源庫

前面我們介紹了載入檔案,我們經常要載入的可能就是swf檔案了,我們在實際使用中還會把swf檔案作為共享資源庫,就是把一些

元件放到乙個swf檔案裡,這樣只要載入它的檔案都可以使用它的庫裡面的元件,這樣做的好處在於我們可以使主檔案更小一點,

當多個檔案使用相同的元件時,就可以共用了。

1:先建乙個fla檔案,在庫裡面建幾個元件,這裡我們建乙個mc,乙個button,然後匯出,mc我們起名叫mymc,button我們起名叫mybtn,

fla檔案叫library,發布生成乙個library.swf檔案。

2:再來建立主檔案,建乙個fla檔案,起名叫:loadlibrary,再來建立乙個文件類mainform.as:

CSS基礎知識 3

標題字 字型 大小 顏色 正文本 字型 大小 顏色 重點強調 顏色 字型樣式 控制字型 指定字型 font family value1,value2 字型可寫多個,中間用逗號隔開,字型間的優先順序按照先讀到哪個就用哪個,第乙個字型沒有會查詢下乙個字型,如果使用者電腦裡所有字型都沒有,那麼就按照預設的...

java基礎知識(3)

構造方法 構造方法是一種特殊的方法,其主要功能是用來建立物件時初始化物件,即為物件成員變數賦初始值。構造方法與類名相同,可過載多個不同的構造方法。package com.zjm.www.day10 動物練習 author zjm public class ex animal class animal...

Python基礎知識3

程式語言中函式定義 函式是邏輯結構化和過程化的一種程式設計方法。先定義乙個數函式,然後按照這個數學模型用程式語言去實現它。def test x the function definitions x 1 return x def 定義函式的關鍵字 test 函式名 內可定義形參 文件描述 x 1 函式...