[英]Flex DateField / DateChooser Issue
我們使用mx:DateField作為日期,並使用editable =“ true”,以便我們可以選擇一個日期或也可以輸入一個日期。 要求是我們在此字段中輸入的字符數不能超過10個(2010年10月10日)。 但是DateField沒有maxChars屬性來限制它。
因此,我們嘗試使用文本字段+ DateChooser來限制字符數。 一切都按預期工作,但問題在於DateChooser在頁面上顯示了整個日歷,而不是作為會彈出日歷的Calendar圖標(作為DateField)。
所以現在我的q是
1)使用DateField,如何將可在文本字段中輸入的字符數限制為10
要么
2)使用DateChooser,如何更改其外觀以顯示“日歷”圖標,然后單擊該日歷時將其顯示為彈出窗口(類似於DateField)。
如果有人可以幫助我,那將是美好的。
從這樣的事情開始:
<s:TextInput click="dc.visible=!dc.visible" maxChars="10" />
<mx:DateChooser id="dc" visible="false" />
從這里,您只需要處理日期選擇器的點擊事件並適當地填寫textinput
更新:試圖通過評論回答您的問題
用戶界面:
<s:HGroup>
<s:TextInput id="dateInput" click="dateInput_clickHandler(event)" maxChars="10" />
<mx:DateChooser id="dc" visible="false" includeInLayout="false" change="dc_changeHandler(event)" />
</s:HGroup>
腳本:
protected function dateInput_clickHandler(event:MouseEvent):void
{
dc.includeInLayout = !dc.includeInLayout;
dc.visible = !dc.visible;
}
protected function dc_changeHandler(event:CalendarLayoutChangeEvent):void
{
dateInput.text = dateFormatter.format(event.newDate);
dateInput_clickHandler(null);
}
聲明:
<mx:DateFormatter id="dateFormatter" formatString="MM/DD/YYYY" />
希望這可以幫助! -Ian
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.