FB 4.6 - компонент списка добавляет метки с количеством элементов?

У меня есть компонент списка, который использует базу данных sqlite в качестве поставщика данных, и я могу использовать labelField для отображения меток данных просто отлично... Однако я хочу добавить добавочный счет перед полем метки, чтобы он был указан как

1.) пункт номер 1 2.) пункт номер 2 ... и т.д...

Я обнаружил labelFunct и написал следующее, чтобы протестировать его:

private function lblFunct(value:Object):String
{
   return value.id + ") " + value.question;
}

и это показывает автоматически назначенный идентификатор базы данных перед текстом метки просто отлично .... моя цель - попытаться получить COUNT каждого элемента, хотя ... Я могу получить LENGTH поставщика данных с помощью

myListComponentID.dataProvider.length

но не могу найти информацию о том, как добиться добавочного счета. можно ли построить какой-то цикл для каждого цикла в labelFunct? кто-нибудь может пролить свет на это? Заранее спасибо.


person tamak    schedule 19.02.2013    source источник
comment
Я не уверен, что вы имеете в виду под счетом. Что вы считаете? Вы имеете в виду позицию индекса элемента в вашем dataProvider?   -  person JeffryHouser    schedule 19.02.2013
comment
я предполагаю, что «индексная позиция» - это правильный способ ссылаться на нее .... так что, поскольку элементы позиционируются в компоненте списка, элемент «счетчик» - это числовая позиция, которую занимает элемент ... 1 для первого, 2 на второй и т.д. и т.п.   -  person tamak    schedule 19.02.2013


Ответы (2)


Вы на правильном пути с labelFunction. Вы можете использовать getItemIndex в вашем dataProvider для определения itemIndex отображаемого элемента:

private function lblFunct(value:Object):String
{
   return myListComponentID.dataProvider.getItemIndex(value) + ") " + value.question;
}
person JeffryHouser    schedule 19.02.2013
comment
это было близко, но пришлось изменить на getItemIndex, чтобы заставить его работать... спасибо! - person tamak; 19.02.2013
comment
@tamak Я упомянул и связал метод записи; но ошибся в коде. Виноват; Я исправил свой ответ. - person JeffryHouser; 19.02.2013

с помощью человека, который ответил, я нашел свой путь к решению... функция fabel в итоге выглядела так:

private function lblFunct(value:Object):String
{
    return (myListComponentID.dataProvider.getItemIndex(value)+1) + ") " + value.question;
}

Я добавил +1, чтобы компенсировать тот факт, что он основан на нуле. спасибо ответчику, вы помогли мне найти ответ. Очень признателен!

person tamak    schedule 19.02.2013