![]() |
|
||||||||||
|
|||||
|
Регистрация: May 2008
Адрес: Одесса
Сообщений: 31
|
Есть следующая проблема.
Имеется ComboBox с 4 пунктами. При нажатии на один из них в TextArea подгружаются данные из XML. Вроде всё классно работает. Но. Из 4-х выпадающих пунктов только 3 нужны. В 4-м (он же первый в списке) просто фраза, приглашающая сделать выбор. При выборе её из списка вместо текста вылазит undefined, что вполне логично, но абсолютно не приемлимо. Как сделать нужный мне 2-й пункт по умолчанию первым? Далее, текст который появляется должен иметь другой цвет. Я так и не допёр как его изменить. Обшарил весь "хелп", поменял цвета скроллинга, фона, рамку, а для текста так и не нашёл Помогите.И ещё: текст набранный в XML выглядит как надо. Но в TextArea начинают вылазить лишние отступы. Как избавиться? Исходник прилагается. |
|
|||||
|
Может так?
function setup() {
chooseperson.labelField = "pname";
chooseperson.dataProvider = people;
chooseperson.selectedIndex= 1
chooseperson.addEventListener("change", Delegate.create(this, loadScreen));
}
1. Закрываю список кнопкой с надписью "Выбери..." 2. Вешаю на неё метод open для списка. Разумеется "Выбери..." не включать в список. Но это дело вкуса |
|
|||||
|
По поводу лишних отступов, недавно была такая же проблема, решили тут: http://www.flasher.ru/forum/showthre...E1%E7%E0%F6%E0
|
|
|||||
|
Еще такой вариант, сыроват правда, но работает:
... function setup() { chooseperson.labelField = "pname"; chooseperson.dataProvider = people; chooseperson.addEventListener("change", Delegate.create(this, loadScreen)); chooseperson.addEventListener("open", Delegate.create(this, loadScreen)); } var flag= true function loadScreen(evt:Object) { var thisitem:Object = evt.target.selectedItem; if (flag) { chooseperson.removeItemAt(0); flag = false; } ta.text = thisitem.desc; ta.vPosition = 0; bgcol.setRGB(thisitem.bgcolor); } ... Можно просто убить листенер "open", а не пользоваться флагом Последний раз редактировалось Жень Шень; 19.12.2008 в 13:47. |
|
|||||
|
можно "Выберите раздел" совсем не пихать в датаПрвайдер
а повесить его как приглашение один раз |
![]() |
![]() |
Часовой пояс GMT +4, время: 21:20. |
|
|
« Предыдущая тема | Следующая тема » |
|
|