У меня есть группа HGroup, которая содержит DataGroup с ArrayCollection для dataProvider.flash builder (flex): VScrollbar для DataGroup, как прокрутить вниз по умолчанию?
В DataGroup подключен VScrollBar.
Как я могу убедиться, что всякий раз, когда в ArrayCollection добавляются новые строки, группа данных будет прокручиваться вниз?
Это окно будет использоваться для приложения чата, поэтому, когда будут добавлены новые строки, мне нужно будет увидеть новые строки.
я знаю, что я могу выполнить следующую команду, чтобы прокрутить вниз: chatScrollBar.value = chatScrollbar.maximum
но какое событие мне нужно приложить для того, чтобы запустить эту команду каждый раз, когда новая строка видна?
<s:HGroup width="100%">
<s:DataGroup id="vertView"
clipAndEnableScrolling="true" width="100%" height="60"
dataProvider="{chatMessages}">
<s:itemRenderer>
<fx:Component>
<s:ItemRenderer width="100%" height="8">
<s:states>
<s:State name="normal" />
<s:State name="hovered" />
</s:states>
<s:RichText text="{ data }" textAlign="left" paddingLeft="2" color="black" color.hovered="blue"/>
</s:ItemRenderer>
</fx:Component>
</s:itemRenderer>
<s:layout>
<s:VerticalLayout useVirtualLayout="true"/>
</s:layout>
</s:DataGroup>
<s:VScrollBar id="chatScrollBar" viewport="{vertView}"
height="{vertView.height}" />
</s:HGroup>
К сожалению valueCommit не выполняется, когда я добавляю строку, Я попытался использовать s: Список вместо s: DataGroup, но я получил те же результаты – ufk
Попробуйте пример, который я добавил. – Thomas
VerticalLayout не имеет maxScrollPosition – ufk