PDA

Просмотр полной версии : стандартный Combobox


mielenyvin
14.10.2007, 20:33
стандартный Combobox на флэш - выпадающее меню. Как назначить каждой строке comboboxa html адрес страницы, чтобы при выборе соответствующего пункта комбобокса браузер сразу переходил на эту страницу?
после суток исследований я пришел к следющему


my_cb.addItem({data:"excellentonline.net", label:"Выберите город", url:"swissmap.html"});
my_cb.addItem({data:"map.html", label:"Базель"});
my_cb.addItem({data:"swissmap.html", label:"Интерлакен"});
var listener = new Object();
listener.change = function(e) {
getURL(e.target.selectedItem.data);
};
my_cb.addEventListener("change", listener);


всё работает!

screamge
14.10.2007, 20:36
Событие на закрытие комбо и значение выбранного айтема + getURL, как запихивать текст написанно в хелпе.

mielenyvin
14.10.2007, 20:39
как запихивать текст я знаю... ) значит нужно в компонент инспекторе прописать ссылку? там где data указать getURL("http://www.ya.ru");
?
ничего не происходит

screamge
14.10.2007, 20:45
Нет, у комбо есть события. Нужно подписаться на них и при происхождении его вызывается функция в которой будет написанно что нужно перейти на нужный адресс, если названия в комбо являются названия страниц то просто прибавлять к значению выбранного + http || php || ..., что там у вас, если нет то нужно сделать массив в котором порядковый номер выбранного в комбобоксе элемента будет совпадать с адрессом страницы на которую нужно перейти.

mielenyvin
14.10.2007, 21:07
в моем случае названия - это названия городов. они находятся в ячейке lables. в ячейке data этим столбцам присваиваются значения. если я пишу значение в стиле 1+getURL("http://www.ya.ru"); ничего не происходит. также, если я оставляю значение http://www.ya.ru переход на нужную мне страницу (www.ya.ru) не происходит...

либо нужно задать массив в текущем кадре... и написать там что-нибудь вроде
array
if Data=1
{
function
{getURL ("http://www.ya.ru") };
}

screamge
14.10.2007, 21:18
1. ComboBox.close — событие.
2. Функция вызываемая по событию через addEventListener.
3. Свойство selectedItem.

Привер из хелпа:

// Add Items to List.
my_cb.addItem({data:1, label:"First Item"});
my_cb.addItem({data:2, label:"Second Item"});
my_cb.addItem({data:3, label:"Third Item"});
my_cb.addItem({data:4, label:"Fourth Item"});

var cbListener:Object = new Object();
cbListener.change = function(evt_obj:Object) {
var item_obj:Object = my_cb.selectedItem;
var i:String;
for (i in item_obj) {
trace(i + ":\t" + item_obj[i]);
}
trace("");
};
my_cb.addEventListener("change", cbListener);


За место значений data пишите нужный адресс.
В слушателе меняете событие change на указанное выше, а в самой фунцкии пишите getURL;

p.s. оформите код в вашем посте соответсвующими тегами.

iNils
14.10.2007, 21:30
mielenyvin
1. Для оформления своего кода, надо использовать теги .
2. Есть кнопка http://www.flasher.ru/forum/images/russian/style3/buttons/edit.gif, поэтому не надо создавать несколько сообщений подряд, надо исправить последнее в теме.
3. Раздел Общие вопросы не предназначен для вопросов связанных с программирование.