Flex 小結

將類名字符串轉爲類-----------------------------------------

var className:String;

var definition:Class = getDefinitionByName(className) as Class;

var obj:Object = new definition();

AdvancedDataGrid去除排序按鈕---------------------------

sortExpertMode="true"  如果不好用再添加上 sortableColumns="false"

獲取瀏覽器url地址--------------------------------------------
var url:String = ExternalInterface.call("window.location.href.toString");

Flash Builder 修改中文/英文----------------------------------

修改目錄下的配置文件,FlashBuilder.ini和FlashBuilderC.ini, 將en-US修改爲zh-CN即可

毫米與像素的轉換---------------------------------------------

轉換還需要知道另一個參數:DPI(每英寸多少點) 
象素數 / DPI = 英寸數 
英寸數 * 25.4 = 毫米數 

獲取DPI : Capabilities.screenDPI (指定屏幕的每英寸點數 (dpi) 分辨率,以像素爲單位)

獲取分辨率 : Capabilities.screenResolutionX (指定屏幕的最大水平分辨率)

                       Capabilities.screenResolutionY (指定屏幕的最大垂直分辨率)

常用的1024x768或800x600等標準的分辨率計算出來的dpi是一個常數:96,因此計算出來的毫米與像素的關係也約等於一個常數: 
基本上 1毫米 約等於 3.78像素  

獲取系統安裝字體---------------------------------------------

var fontFamily:Array = Font.enumerateFonts(true);
fontFamily.sortOn("fontName", Array.CASEINSENSITIVE);

對一個數取整---------------------------------------------------

Math.round();  ----------  對一個數四捨五入取整

Math.floor();  ------------  對一個數向下取整, 即只要整數部分, 捨去小數部分

Math.ceil();  -------------  對一個數向上取整, 即只要小數部分不爲0, 所得整數爲原整數部分+1

正則校驗-------------------------------------------------------------------------

使用flex自身的RegExpValidator控件進行正則表達式校驗十分方便,但是需要注意以下幾點:

1.必須用{''}將正則表達式括起來。

2.所有的轉義符號\都必須寫成\\。

3.大括號{}必須加轉義符號。

例:<mx:RegExpValidator id="regExpV" source="{str}" property="text"

        flags="g" expression="{'^[1-9](\\d*\\.\\d\{1,2\}|\\d*)$'}" noMatchError="版本形式不合法"/>

校驗器------------------------------------------------------------

var validatorAll:Array = Validator.validateAll([v1]);
if(validatorAll.length != 0) 
{
	Alert.show("請填寫標題!", "提示:");
	return;
}
 textArea 文字換行----------------------------------------------
<s:TextArea  text="灰化肥發黑&#13; 黑化肥發灰 "/>
獲取當前窗口大小-----------------------------------------------
FlexGlobals.topLevelApplication.stage.stageWidth
FlexGlobals.topLevelApplication.stage.stageHeight
日期格式化-------------------------------------------------------
1. 
var df:DateTimeFormatter = new DateTimeFormatter("", DateTimeStyle.SHORT, DateTimeStyle.NONE);
var str:String = df.format(date);
2.
var df:DateTimeFormatter = new DateTimeFormatter("");
df.setDateTimeStyles(DateTimeStyle.SHORT, DateTimeStyle.NONE);
var str:String = df.format(date);

3. 

var df:DateFormatter = new DateFormatter();
df.formatString = "YYYY-MM-DD";
var str:String = df.format(date);

日期比較-----------------------------------------------------------
ObjectUtil.dateCompare(date1,date2) 返回值爲int類型
date1 > date2        1
date1 = date2        0
date1 < date2       -1
獲取當前月最後一天--------------------------------------------
new Date(2012, 12, 0).getDate();
/**獲取當前月最後一天*/
public static function getLastDay():Date {
    var now:Date = new Date();
    var d:Date = new Date(now.fullYear, ++now.month, 0);
    return new Date(d.fullYear, d.month, d.getDate());
}

flex 圖表ColumnChart能夠點擊數據獲得該數據x軸,與y軸座標-----------------------------------------------(未驗證)

/**柱狀圖點擊事件,獲取該柱狀圖的X軸、Y軸字段及下標*/
protected function custTypeChart_itemClickHandler(event:ChartItemEvent):void
{
     var psi:ColumnSeriesItem= event.hitData.chartItem as ColumnSeriesItem;
    Alert.show(psi.item.屬性+psi.index);
}

樣式-----------------------------------------------------------------

http://www.scalenine.com/
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章