如何 select 在 mx:DateField 中发送文本 属性
How to select text property in mx:DateField
我想手动 select 日期字段 "textInput" 框中的文本。
我怎样才能做到这一点?由于只有 TextInput 组件具有 "selectAll()" 方法,该方法 select 插入框内的整个字符串。
我到处找都找不到。
我试过了
var text_input:mx.controls.TextInput = date_field.mx_internal::getTextInput();
text_input.setSelection(0, text_input.length);
text_input.setFocus();
但是没有用,"text_input.text"是空的。所以我猜它是另一个在 Datefield 的框中显示字符串的组件。我用 selectedDate 属性.
填充日期字段
dateField.selectedDate = date;
----------------编辑
成功了。我所要做的就是找到放置该代码的正确方法。当您在 DateField 的 creationComplete 和触发器之前使用 selectedDate 时,它实际上并没有设置 text_input。您必须等待它完全完成它的触发事件才能使用 text_input。因此,在设置 selectedDate 后,我使用 value_commit 触发器来 select 文本。这是:
protected function cmpDateFault_valueCommitHandler(event:FlexEvent):void
{
if(isSelect){
var text_input:mx.controls.TextInput = cmpDateFault_valueCommitHandler.mx_internal::getTextInput();
text_input.setSelection(0, text_input.length);
text_input.setFocus();
isSelect = false;
}
}
"isSelect" 是我用来使 value_commit 只在第一次工作的技巧,这正是我想要的。我在其他 mxml 上完成完全创建和触发器之前设置了 isSelected。
您可以像这样使用 mx.core.mx_internal
来做到这一点:
var text_input:mx.controls.TextInput = date_field.mx_internal::getTextInput();
text_input.setSelection(0, text_input.length);
text_input.setFocus();
希望能帮到你。
我想手动 select 日期字段 "textInput" 框中的文本。 我怎样才能做到这一点?由于只有 TextInput 组件具有 "selectAll()" 方法,该方法 select 插入框内的整个字符串。
我到处找都找不到。
我试过了
var text_input:mx.controls.TextInput = date_field.mx_internal::getTextInput();
text_input.setSelection(0, text_input.length);
text_input.setFocus();
但是没有用,"text_input.text"是空的。所以我猜它是另一个在 Datefield 的框中显示字符串的组件。我用 selectedDate 属性.
填充日期字段dateField.selectedDate = date;
----------------编辑
成功了。我所要做的就是找到放置该代码的正确方法。当您在 DateField 的 creationComplete 和触发器之前使用 selectedDate 时,它实际上并没有设置 text_input。您必须等待它完全完成它的触发事件才能使用 text_input。因此,在设置 selectedDate 后,我使用 value_commit 触发器来 select 文本。这是:
protected function cmpDateFault_valueCommitHandler(event:FlexEvent):void
{
if(isSelect){
var text_input:mx.controls.TextInput = cmpDateFault_valueCommitHandler.mx_internal::getTextInput();
text_input.setSelection(0, text_input.length);
text_input.setFocus();
isSelect = false;
}
}
"isSelect" 是我用来使 value_commit 只在第一次工作的技巧,这正是我想要的。我在其他 mxml 上完成完全创建和触发器之前设置了 isSelected。
您可以像这样使用 mx.core.mx_internal
来做到这一点:
var text_input:mx.controls.TextInput = date_field.mx_internal::getTextInput();
text_input.setSelection(0, text_input.length);
text_input.setFocus();
希望能帮到你。