Форум Flasher.ru
Ближайшие курсы в Школе RealTime
Список интенсивных курсов: [см.]  
  
Специальные предложения: [см.]  
  
 
Блоги Правила Справка Пользователи Календарь Сообщения за день
 

Вернуться   Форум Flasher.ru > Flash > Flex

Версия для печати  Отправить по электронной почте    « Предыдущая тема | Следующая тема »  
Опции темы Опции просмотра
 
Создать новую тему Ответ
Старый 14.09.2009, 14:07
Касеал вне форума Посмотреть профиль Отправить личное сообщение для Касеал Найти все сообщения от Касеал
  № 1  
Ответить с цитированием
Касеал

Регистрация: Dec 2008
Сообщений: 17
По умолчанию ComboBox, ListEvent.

Необходимо следующее:

Код AS3:
var str:String = myComboBox.selectedItem.toString();
Причём это нужно сделать именно при клике на каком-нибудь пункте.

Если подписаться на это событие:
Код AS3:
myComboBox.addEventListener(ListEvent.CHANGE, event);
, то текст из уже установленного пункта можно будет получить, только если выбрать сначала другой.

Если на это:
Код AS3:
myComboBox.addEventListener(DropdownEvent.CLOSE, event);
, то текст будем получать даже когда никакой пункт не выбран, что само собой разумеется, исходя из типа события.

Как отловить событие нажатия именно на каком-нибудь пункте?
Код AS3:
myComboBox.addEventListener(ListEvent.ITEM_CLICK, event);
- вот это событие описано в документации, но оно не возникает почему-то.


Последний раз редактировалось Касеал; 14.09.2009 в 14:09.
Старый 14.09.2009, 14:27
lighto вне форума Посмотреть профиль Отправить личное сообщение для lighto Найти все сообщения от lighto
  № 2  
Ответить с цитированием
lighto
[+1 17.02.10]
 
Аватар для lighto

Регистрация: Aug 2009
Адрес: Казахстан Усть-Каменогорск
Сообщений: 249
У комбо бокс есть параметры
если ты в комбо бокс выташил что то из БД иль ввел заранее в массиве
Код AS3:
var str:String = myComboBox.selectedItem.{тот параметр который нужен}.toString()
flex его(параметр) не подсвечивает но он есть обрашайся к нему как говориться принудительно
только {} не пиши :-).

Старый 14.09.2009, 15:29
Касеал вне форума Посмотреть профиль Отправить личное сообщение для Касеал Найти все сообщения от Касеал
  № 3  
Ответить с цитированием
Касеал

Регистрация: Dec 2008
Сообщений: 17
Шутку про скобки понял. Очень смешно.

Данные, которыми заполняется ComboBox, берутся из текстового файла и представляют собой набор стандартных фраз для чата. Так вот, даже если и работает такой вариант, на какое событие я буду обращаться к своим элементам?
При известном selectedItem мне не нужно ничего мудрить, я просто беру его значение.

Вопрос заключается не в том, как взять данные с конкретного пункта, а как отловить выбор этого пункта.
А если ещё конкретнее, почему не происходит событие ListEvent.ITEM_CLICK, которое описано в документации как событие, возникающее в тот момент когда пользователь щёлкает мышкой на item, когда курсор мыши находится в компоненте?

Старый 14.09.2009, 16:01
CblP вне форума Посмотреть профиль Отправить личное сообщение для CblP Посетить домашнюю страницу CblP Найти все сообщения от CblP
  № 4  
Ответить с цитированием
CblP

Регистрация: Aug 2008
Сообщений: 69
Отправить сообщение для CblP с помощью ICQ
можно попробовать заюзать myComboBox.addEventListener(ListEvent.CHANGE, event);
и после выбора "сбрасывать/менять" значение selectedItem - вручную.
Только при этом по идее сработает снова ивент ;-)

Старый 14.09.2009, 18:00
yorlin вне форума Посмотреть профиль Отправить личное сообщение для yorlin Найти все сообщения от yorlin
  № 5  
Ответить с цитированием
yorlin
 
Аватар для yorlin

Регистрация: Nov 2008
Сообщений: 109
А чем вам не подходит решение из того же мануала?
http://livedocs.adobe.com/flex/3/lan.../ComboBox.html
В самом низу.

Старый 14.09.2009, 19:52
Касеал вне форума Посмотреть профиль Отправить личное сообщение для Касеал Найти все сообщения от Касеал
  № 6  
Ответить с цитированием
Касеал

Регистрация: Dec 2008
Сообщений: 17
Решение мне не подходит по следующим причинам. Обратите внимание на то, что когда первый раз открывается список, выделен сразу item - "Visa". После этого, не нажимаем на item "Visa", кликаем где-нибудь в области окна, после чего можем наблюдать, что метки "You selected" и "Data" заполняются данными с этого item-а, на который не нажимали. Можно пойти дальше и сразу установить какие-нибудь данные, в результате чего при щелчке на том же item, данные будут обновляться и этого видно не будет визуально.

Теперь моя ситуация. У меня компонент чата для ввода сообщения. Пользователь видит компонент с набором фраз. Выделяет его, чтобы посмотреть или случайно нажимает на кнопку "combo". В результате, при закрытии списка данные текущего item-а введутся в поле ввода даже если он не выберет ни одного пункта, что есть не очень-то хорошо в этом случае.

Старый 16.09.2009, 22:43
GBee вне форума Посмотреть профиль Отправить личное сообщение для GBee Найти все сообщения от GBee
  № 7  
Ответить с цитированием
GBee
 
Аватар для GBee

Регистрация: Jan 2009
Сообщений: 3,067
Записей в блоге: 3
Отправить сообщение для GBee с помощью Skype™
Сделайте первый элемент пустышкой :о) Хотя нет, в примере по ссылке обработчик на close, а вам раньше правильно советовали change (оно сработает только на действие юзера)
__________________
Чтобы доказать, что вы не робот, причините вред другому человеку.


Последний раз редактировалось GBee; 16.09.2009 в 22:46.
Создать новую тему Ответ Часовой пояс GMT +4, время: 03:15.
Быстрый переход
  « Предыдущая тема | Следующая тема »  

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.


 


Часовой пояс GMT +4, время: 03:15.


Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.