Форум Flasher.ru

Форум Flasher.ru (http://www.flasher.ru/forum/index.php)
-   Flex (http://www.flasher.ru/forum/forumdisplay.php?f=84)
-   -   ToggleButtonBar и dataProvider. (http://www.flasher.ru/forum/showthread.php?t=133980)

Ex0rcist 18.12.2009 01:23

ToggleButtonBar и dataProvider.
 
Есть ToggleButtonBar, в одном из стейтов приложения назначаю ему dataProvider примерно так:
Код AS3:

top_bs.dataProvider = new Array('Button 1', 'Button 2', 'Button 3');

Если сделать trace(top_bs.selectedIndex) до присвоения датапровайдера, выведется 0. Если после, то -1, т.е. не выбраны элементы. Если далее выполнить
Код AS3:

top_bs.selectedIndex = 0

и опять trace(top_bs.selectedIndex), то все равно выведется -1, но в приложении будет выделена первая кнопка.
Знающие люди, подскажите как быть, если далее выполняется функция на основе выбранной кнопки в top_bs, а selectedIndex у нее хоть убейся "-1"? По умолчанию должна стоять 0, и стоит 0, но после присвоения датапровайдера становится -1, и в коде уже больше не меняется, пока не щелку по кнопке в приложении

alatar 18.12.2009 11:16

По-идее, даже после присвоения провайдера, и после:
Код AS3:

top_bs.selectedIndex = 0;

Индекс должен остаться равным 0 (по-умолчанию).
Проверил у себя, индекс равен 0. По крайней мере в SDK 3.4.0

Ex0rcist 18.12.2009 11:37

Почему то ни до, ни после присовения датапровайдера элемент на измнение выбранного индекса не реагирует... Т.е. до трейсится 0, после -1.
Может я неправильно назначаю датапровайдер в других стейтах до этого?

alatar 18.12.2009 15:04

Скорее всего у вас где-то устанавливается selectedIndex = -1;
Какая у вас версия SDK? В 3.2 в этом сеттере была ошибка, правда как раз обратная.

Добавлено через 48 секунд
Вот суть ошибки:
In mxml, if you set <mx:ToggleButtonBar selectedIndex="-1">, documentation say that none of buttons should be selected.
In fact, the first one is selected.

Steps to reproduce:
1.
<mx:ToggleButtonBar id='tbb' selectedIndex="-1" dataProvider="{[1,2,3]}"/>

Actual Results:
button one is selected =>> tbb.selectedIndex == 0

Expected Results:
none of button selected =>> tbb.selectedIndex == -1


Workaround (if any):
<mx:ToggleButtonBar dataProvider="{[1,2,3]}" id="tbb" creationComplete="tbb.selectedIndex=-1"/>


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

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