05.22
許多朋友在使用Bitmap和BitmapData時很容易犯一個錯誤
其實這個錯誤也經常發生DataGrid和DataProvider上面
在Adobe Help上有明確的說明Bitmap和BitmapData差別
flash.display.Bitmap
The Bitmap class represents display objects that represent bitmap images.
flash.display.BitmapData
The BitmapData class lets you work with the data (pixels) of a Bitmap object.
由此可知Bitmap Class的主要功能是顯示點陣影像
而BitmapData Class的功能主要是處理Bitmap每個像素資料
所以當我們要處理影像時千千萬萬不要對Bitmap下手
因為Bitmap的功能只能把影像的資料顯示出來
而要處理影像必須先把Bitmap的資料交給BitmapData
再由BitmapData來對每個pixels處理才行
還有一個也是經常有人會發生的錯誤是
直接把BitmapA的bitmapData Assign給BitmapB的bitmapData
當對BitmapB的BitmapData做更動時BitmapA也會跟著更動
因為這兩個Bitmap根本就Bindding同一個份BitmapData
就像兩個DataGrid Bindding同一個份DataProvider的意思是一樣的
當其中的DataGrid的dataProvider做修改,兩個同時都會修改
所以當希望兩個影像能各做各的事的話記得要再new一個新的BitmapData才行
否則只會把兩個影像的資料綁死在一起喔^^
PS: DataGrid和Bitmap主要的功能是把資料內容顯示出來,對於資料的處理還是必須交給DataProvider(Arraycollection)或BitmapData才妥當。
相關文章:
文章內容由宋志峰[ANISTAR]撰寫,引用分享請以鏈結形式註明出處與原始作者。


顿悟了,Thanks~~
不會,很高興有幫到忙.