Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/apache-flex/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Flash 使用Flex ComboBox_Flash_Apache Flex_Actionscript_Combobox - Fatal编程技术网

Flash 使用Flex ComboBox

Flash 使用Flex ComboBox,flash,apache-flex,actionscript,combobox,Flash,Apache Flex,Actionscript,Combobox,在Flex中,我们可以使用以下内容创建组合框: <s:ComboBox id="mycb" dataProvider="{data}" labelField="name" change="combobox1_changeHandler(event)"/> 但是,如何访问组合框的值?我尝试了mycb.textInput.text,但似乎效果不好。如果我使用mycb.selectedItem.name,如果用户手动键入列表中不存在的值,它将发出错误 那么,如何获取下拉列表中的组合框的值

在Flex中,我们可以使用以下内容创建组合框:

<s:ComboBox id="mycb" dataProvider="{data}" labelField="name" change="combobox1_changeHandler(event)"/>
但是,如何访问组合框的值?我尝试了mycb.textInput.text,但似乎效果不好。如果我使用mycb.selectedItem.name,如果用户手动键入列表中不存在的值,它将发出错误

那么,如何获取下拉列表中的组合框的值


谢谢。

您的第二次尝试是正确的,mycb.selectedItem.name。在更改处理程序中,始终检查非空值,如ifmycb.selectedItem=无效的这样就不会出现错误。确保labelfield与数据提供程序中的变量匹配。

查看for组合框。请注意,当用户键入数据提供程序中不存在的内容时,它们如何使用来处理这种情况

<!-- Function to handle custom input strings -->                        
private function myLabelToItemFunction(input:String):*
{
    <!-- Returns object that matches items in dataProvider -->
    return {ingredient:input, category:"mystery"};
}
可以使用此函数返回包含自定义值的对象。然后让您现有的变更处理程序处理自定义值,就像处理dataProvider中的值一样

<!-- Function to handle custom input strings -->                        
private function myLabelToItemFunction(input:String):*
{
    <!-- Returns object that matches items in dataProvider -->
    return {ingredient:input, category:"mystery"};
}

谢谢你的回答。如果为空,那么如何获取值?因此您需要正确地使用dataprovider值和manual值。在这种情况下,我认为combobox没有任何可用的功能。但还有另一种方法。在combobox中,您可以显示其他人,如果用户选择其他人,则显示textiput&从中获取值。