1
我正在使用gwt-dnd在我的GWT程序中實現拖放功能。要獲得滾動的工作權利,我需要我需要知道VerticalPanel何時更改大小
<ScrollPanel>
<AbsolutePanel>
<VerticalPanel>
<!-- lots of draggable widgets -->
</VerticalPanel>
</AbsolutePanel>
</ScrollPanel>
我必須手動設置AbsolutePanel的大小要足夠大,以包含VerticalPanel。但是,當我將小部件添加到VerticalPanel時,VerticalPanel.getOffsetHeight()報告的大小不會立即更新 - 我想它必須先由瀏覽器呈現。所以我不能立即更新AbsolutePanel的大小,而且它最終會變得太小。哎呀!
我的解決方案是設置一個計時器,在500ms後調整面板大小。屆時,getOffsetHeight通常會返回更新的值。有什麼辦法可以立即預覽尺寸變化,或者任何事情嗎?或者,也可以立即強制渲染循環,以便我可以在不設置容易出錯的定時器的情況下獲得新的大小?
你什麼時候檢查新的面板高度? – 2010-10-13 16:28:33
我希望能夠在添加新小部件後立即檢查它。 – 2010-10-14 12:52:06