在FLEX開發中有一些小技巧,經理在這里總結下,方便以后查閱,也希望能和大家一起交流。 這些小功能在實際開發中是很經常用的。
一、在DataGrid的列中加圖片 做報表的時候經常會在DataGrid中加入一些刻度條或者增減的圖片表示一些API指標值,其實這個功能FLEX可以實現。 在DataGrid-colums-DataGridColumn中有個itemRenderer屬性,這個屬性可以讓你用一個組件來替換這個列中本來的內容。 OK,進入正題。 首先,我們先創建一個組件(這里以一個圖形為例),名為MyImage code清單1
這里的num是一個dataField中的值,這里可以用value.num來取到這個值
接下來,我們直接利用itemRenderer屬性把這個組件設置進去就OK了 code清單2
當然,我們除了加圖片還可以加入一些控件進去。方法也如上就是了。
二、列表多表頭 用AdvancedDataGrid來繪制多表頭。如果有上下兩層的表頭,那么主表頭就用AdvancedDataGridColumnGroup標簽,子表頭用AdvancedDataGridColumn嵌在AdvancedDataGridColumnGroup標簽內就可以了。 code清單3
這里值得注意的有幾個屬性: headerSortSeparatorSkin:用于定義 AdvancedDataGrid 控件中標題的文本和圖標部分之間分隔符的外觀。這個東西主要是用來去掉AdvancedDataGrid多表頭旁邊的一個線條。 variableRowHeight:一個標志,指示各行是否可以采用不同的高度。 更多的樣式請參考... http://m.tkk7.com/zhangyuan/archive/2010/08/27/330064.html
三、Chart雙坐標軸 在Chart標簽中實際上除了dataProvider還有secondDataProvider這樣的屬性,也有類似secondSeries的一系列標簽,這些標簽都是為雙坐標軸服務的。要做雙坐標的圖表其實很簡單.. code清單4
四、Chart中自定義提示(labelFunction) 在Chart的Series中,有labelFunction屬性,這個屬性是為了擴展提示用的 code清單5
這里的showlabel其實就是現實提示的這個方法,那么我們在as中定義好這個方法 code清單6
這里是餅圖的幾個參數 其中通過data.xxx可以取到數據,percentValue是餅圖自動計算出的百分比數。
如果想圖個簡單,不用那個百分比可以這樣寫 code清單7 private function showlabel(hitData:HitData):String { return "<font size='12'>"+hitData.item.org+"</font><br>"+hitData.item.num2+"%"; }
效果都還不錯
五、Chart的漸變色 這里的漸變分背景漸變和圖表元素漸變 先來說下背景漸變: 經理以ColumnChart為例
code清單7
GradientEntry標簽代表漸變的顏色,顯然這里只有從#02817c到#ffffff的漸變效果,那么直接把這個代碼加在ColumnChart標簽里就可以了。
圖表元素漸變和背景漸變差不多
code清單8
這樣非常好看