我正在擴展VBox來製作Calendar組件。我應該重寫哪些方法來添加代碼來繪製自己?所有這些方法有什麼區別?有沒有我應該把每一個,或者有一個具體的方法,我可以重寫,添加我的繪圖代碼,並讓它的工作?Flex組件生命週期:validateNow,validateDisplayList,invalidateDisplalList,commitProperties等
謝謝!
我正在擴展VBox來製作Calendar組件。我應該重寫哪些方法來添加代碼來繪製自己?所有這些方法有什麼區別?有沒有我應該把每一個,或者有一個具體的方法,我可以重寫,添加我的繪圖代碼,並讓它的工作?Flex組件生命週期:validateNow,validateDisplayList,invalidateDisplalList,commitProperties等
謝謝!
This white-paper也許是我見過的最好的信息來源。
我也推薦這篇文章:
簡單地說,如果你正在做的圖形操作來繪製,你要使用覆蓋updateDisplayList()
,並根據需要調用invalidateDisplayList()
;如果您使用子組件,則將使用commitProperties()/invalidateProperties()
。如果您動態調整大小,則需要measure()
和invalidateSize()
。
覆蓋updateDisplayList方法UIComponent
並做你的繪圖。使用組件的unscaledWidth
和unscaledHeight
作爲繪圖的邊界。
Deepa's MAX 2008談話很容易就是最好的和最容易理解的話題。它顯示瞭如何在Flex 3中正確編寫組件。
來自Adobe Flex 3 Live Docs Advanced Visual Components in ActionScript - 很好的來源。
這是一個偉大的閱讀,感謝分享! – 2009-11-05 16:17:47