簡體   English   中英

Flex DateField / DateChooser問題

[英]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.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM