嘿大家..我真的很新。我有一个组合框,我使用'selectedIndex'属性给它一个默认值(在第一个(0)索引处的值)。在我的ActionScript中设置此属性会选择下拉列表中的值,但不会将所选值添加到组合框的文本区域。你怎么做到这一点?我做的任何选择都不会影响文本区域。
以下是我的代码示例。组合框列表填写正常。并在列表中选择该值。但是,一旦您在列表中选择了一个值,组合框的列表就会关闭,并且组合框的文本字段中没有任何内容。
comboBoxData.insert(0, {data:1, label:"Show me something specific"});
for (i in animations) {
comboBoxData.push({data: i.uri ,label: "somevalue"});
}
comboBox.dataProvider = comboBoxData;
comboBox.selectedIndex = 0;
comboBox.text = comboBox.selectedIndex;
this._lockroot = true;
我的解决方案是使用AS 2.
谢谢!
-Nick
答案 0 :(得分:2)
我认为你需要添加一些代码。我真的不明白。你有文字区和组合框吗?如果是这种情况,那么你可以做这样的事情来将selectedIndex赋予文本区域
combo_cmb.selectedIndex=1;
text_txt.text=c.selectedIndex;
var listenerObjectPM:Object = new Object();
listenerObjectPM.change = function(eventObject:Object) {
text_txt.text=combo_cmb.selectedIndex;
}
combo_cmb.addEventListener("change", listenerObjectPM);
如果您想在文字区域打印标签,可以更改text_txt.text=combo_cmd.selectedItem.label;
的值
或者如果要打印数据,请将其更改为text_txt.text=combo_cmb.selectedItem.data;
。
如果不是这种情况,你可以编写代码,这样我就可以更好地理解你想要做的事情。
答案 1 :(得分:0)
它应该是您所说的默认行为,但我遇到了同样的问题,这在我的选择更改事件处理程序上修复了它。
e.target.textField.text = e.target.selectedItem.label;