2011-07-26 115 views

回答

2

雖然在輸入我的問題的中間,我做了一些更多的調查和一些Google搜索,並最終遇到了答案。

http://www.cubicleman.com/2008/02/12/flex-datefield-and-formats/

我花了一天時間試圖找到解決這個最好的部分,並且已經GOOGLE了好一點,所以認爲這可能是一個好主意,把它放在計算器,使之更容易別人會在未來找到解決方案。

答案本質上如下。

您需要使用日期格式化程序和標籤功能的組合才能正確顯示日期。然後,爲了能夠在沒有Flex的情況下以編程方式設置日期「你的頭」,你需要將dateField的parseFunction設置爲null。

代碼:

<mx:Script> 
    <![CDATA[ 
     private function doDateLabel(item:Date):String { 
     return dateFormatter.format(item); 
     } 
    ]]> 
</mx:Script> 
<mx:DateFormatter id="dateFormatter" formatString="DD/MMM/YYYY" /> 
<mx:DateField id="begin" 
       showToday="true" 
       labelFunction="doDateLabel" 
       parseFunction="null"/> 
+0

Thanks @merv將解決方案添加到答案中。也許你可以再次讓我高興? –

+0

+ 1確實如此。謝謝 – merv

+0

謝謝你。欣賞它。 –

1
InputTxt.selectedDate = DateField.stringToDate(InputTxt.text, "DD/MM/YYYY"); 

看到的參考爲DateField.stringToDate

+0

stringToDate似乎不適用於像MM-DDD-YYYY這樣的日期。有點奇怪,因爲如果你焦點不夠,selectedDate就會搞砸。 –