Всплывающее окно Flash... установить текстовое поле на выбранное значение?
Привет всем.. Я действительно новичок во флэш. У меня есть поле со списком, и я использую свойство 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.
Спасибо!
-Ник
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;
, если это не так, вы можете написать код, чтобы я мог лучше понять, что вы пытаетесь сделать.
Это должно быть поведение по умолчанию, как вы заявили, но у меня была та же проблема, и это исправило ее для меня в обработчике событий изменения выбора.
e.target.textField.text = e.target.selectedItem.label;