我有一個HGroup,它包含一個DataGroup和一個DataProvider的ArrayCollection。flash builder(flex):數據組的VScrollbar,如何默認向下滾動?
DataGroup附有一個VScrollBar。
我該如何確保每當將新行添加到ArrayCollection時,dataGroup都會向下滾動?
這個窗口將被用於聊天應用程序,所以無論何時添加新行,我都需要看到新的行。
我知道我可以執行以下命令向下滾動: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:List代替s:DataGroup但我得到了相同的結果 – ufk 2010-01-23 20:29:20
試試我添加的例子。 – Thomas 2010-01-24 08:45:22
VerticalLayout沒有maxScrollPosition – ufk 2010-01-24 10:35:28