Flex:在DateField控件中显示月份名称

时间:2011-06-30 09:09:27

标签: flex flex4.5 datefield

我在Flex中使用MX DateField控件,并希望将日期显示为2011年7月1日或2011年7月1日。有谁知道如何执行此操作?我尝试将formatString设置为“DD MMM YYYY”,但它不起作用。

2 个答案:

答案 0 :(得分:4)

这有效:

<fx:Declarations>
    <mx:DateFormatter id="myDf" formatString="DD MMM YYYY"/>
</fx:Declarations>
<fx:Script>
    <![CDATA[
        private function formatDate(date:Date):String{
            return myDf.format(date);
        }
    ]]>
</fx:Script>
<mx:DateField id="dateField" labelFunction="formatDate" />

http://livedocs.adobe.com/flex/3/html/help.html?content=controls_12.html

的LiveDocs中找到它

但是,这并不能解释为什么组件上的formatString属性无法正常工作。 我可以确认它没有按预期工作。

干杯

答案 1 :(得分:0)

我会用这样的东西:

<mx DateField id        = "dateField" 
              dayNames  ="["S", "M", "T", "W", "T", "F", "S"]"
              monthNames="["January", "February", "March", "April", "May",
                           "June", "July", "August", "September", "October", 
                           "November", "December"]" />

由于您提到了3个字符的月份名称,这是一个很好的例子。如果您不需要日期名称,当然要删除该行。

<mx DateField id        = "dateField" 
              dayNames  ="["S", "M", "T", "W", "T", "F", "S"]"
              monthNames="["Jan", "Feb", "Mar", "Apr", "May",
                           "Jun", "Jul", "Aug", "Sep", "Oct", 
                           "Nov", "Dec"]" 
           formatString = "DD MMM YYY" />

希望这有帮助。